当前位置: 首页 > news >正文

郴州市住房和城乡建设厅网站seo网络优化前景怎么样

郴州市住房和城乡建设厅网站,seo网络优化前景怎么样,网页制作公司找哪家,百度热词指数Llama 2是开源LLM发展的一个巨大里程碑。最大模型及其经过微调的变体位居Hugging Face Open LLM排行榜#xff08;https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard#xff09;前列。多个基准测试表明#xff0c;就性能而言#xff0c;它正在接近GPT-3.5…        Llama 2是开源LLM发展的一个巨大里程碑。最大模型及其经过微调的变体位居Hugging Face Open LLM排行榜https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard前列。多个基准测试表明就性能而言它正在接近GPT-3.5在某些情况下甚至超过它。所有这些都意味着对于从RAG系统到Agent的复杂LLM应用程序开源LLM是一种越来越可行和可靠的选择。 一、Llama-2–7B不擅长从文本到SQL 最小的Llama 2模型7B参数有一个缺点是它不太擅长生成SQL因此它不适用于结构化分析示例。例如我们尝试在给定以下提示模板的情况下提示Llama 2生成正确的SQL语句 You are a powerful text-to-SQL model. Your job is to answer questions about a database. You are given a question and context regarding one or more tables. ​You must output the SQL query that answers the question.​### Input:{input}​### Context:{context}​### Response: 在这里我们使用sqlcreatecontext数据集https://huggingface.co/datasets/b-mc2/sql-create-context的一个示例来测试一下效果 input: In 1981 which team picked overall 148?context: CREATE TABLE table_name_8 (team VARCHAR, year VARCHAR, overall_pick VARCHAR) 同时这里是生成的输出与正确输出的对比 Generated output: SELECT * FROM table_name_8 WHERE 1980 YEAR AND TEAM Boston Celtics ORDER BY OVERALL_PICK DESC LIMIT 1;​Correct output: SELECT team FROM table_name_8 WHERE year 1981 AND overall_pick 148 这显然并不理想。与ChatGPT和GPT-4不同原始的Llama 2不能生成期望的的格式和正确的SQL。 这正是微调的作用所在——如果有一个合适的文本到SQL数据的语料库我们可以教Llama 2更好地从自然语言生成SQL输出。微调有不同的方法可以更新模型的所有参数比如全量微调也可以冻结大模型参数仅微调附加参数比如LoRA。 二、微调Llama-2–7B使其可以从文本生成SQL 接下来我们将展示如何在文本到SQL数据集上微调Llama 2然后使用LlamaIndex的功能对任何SQL数据库进行结构化分析。 准备工作 微调数据集来自Hugging Face的b-mc2/sql-create-contexthttps://huggingface.co/datasets/b-mc2/sql-create-context base模型OpenLLaMa 的open_lama_7b_v2https://github.com/openlm-research/open_llama 步骤1加载微调LLaMa的训练数据 PS1以下代码来自doppel-bothttps://github.com/modal-labs/doppel-bot2许多Python代码都包含在src目录中3需要设置一个Modal帐户并生成token。 !pip install -r requirements.txt 首先我们使用Modal加载b-mc2/sql-create-context数据集并将其格式化为.jsonl文件。 modal run src.load_data_sql --data-dir data_sql 结果如下所示 # Modal stubs allow our function to run remotelystub.function( retriesRetries( max_retries3, initial_delay5.0, backoff_coefficient2.0, ), timeout60 * 60 * 2, network_file_systems{VOL_MOUNT_PATH.as_posix(): output_vol}, cloudgcp,)def load_data_sql(data_dir: str data_sql): from datasets import load_dataset​ dataset load_dataset(b-mc2/sql-create-context)​ dataset_splits {train: dataset[train]} out_path get_data_path(data_dir)​ out_path.parent.mkdir(parentsTrue, exist_okTrue)​ for key, ds in dataset_splits.items(): with open(out_path, w) as f: for item in ds: newitem { input: item[question], context: item[context], output: item[answer], } f.write(json.dumps(newitem) \n) 步骤2运行微调脚本 在微调数据集微调llama2模型代码如下 modal run src.finetune_sql --data-dir data_sql --model-dir model_sql 微调脚本会执行以下步骤 将数据集拆分为训练和验证拆分 train_val data[train].train_test_split(test_sizeval_set_size, shuffleTrue, seed42)train_data train_val[train].shuffle().map(generate_and_tokenize_prompt)val_data train_val[test].shuffle().map(generate_and_tokenize_prompt) 将每个拆分为元组的格式输入Prompt、标签输入query和上下文被格式化为输入Prompt然后对输入Prompt和标签进行 tokenize模型采用自回归的方法预测下一个token来进行训练。 def generate_and_tokenize_prompt(data_point): full_prompt generate_prompt_sql( data_point[input], data_point[context], data_point[output], ) tokenized_full_prompt tokenize(full_prompt) if not train_on_inputs: raise NotImplementedError(not implemented yet) return tokenized_full_prompt PS输入Prompt与开始测试llama2的格式完全相同。 运行微调脚本时模型将保存在model_dir指定的远程云目录中如果未指定则设置为默认值。 步骤3评估微调后模型 该模型已经进行了微调可以从云端提供服务。下面我们使用b-mc2/sql-create-context中的示例数据进行一些基本评估比较微调后模型与原始Llama 2模型的性能。 modal run src.eval_sql::main 结果表明微调后的模型有了巨大的改进 Input 1: {input: Which region (year) has Abigail at number 7, Sophia at number 1 and Aaliyah at number 5?, context: CREATE TABLE table_name_12 (region__year_ VARCHAR, no_5 VARCHAR, no_7 VARCHAR, no_1 VARCHAR), output: SELECT region__year_ FROM table_name_12 WHERE no_7 abigail AND no_1 sophia ANDno_5 aaliyah}Output 1 (finetuned model): SELECT region__year_ FROM table_name_12 WHERE no_7 abigail AND no_1 aaliyah AND no_5 sophiaOutput 1 (base model): SELECT * FROM table_name_12 WHERE region__year 2018 AND no_5 Abigail AND no_7 Sophia AND no_1 Aaliyah;​​Input 2: {input: Name the result/games for 54741, context: CREATE TABLE table_21436373_11 (result_games VARCHAR, attendance VARCHAR), output: SELECT result_games FROM table_21436373_11 WHERE attendance 54741}Output 2 (finetuned model): SELECT result_games FROM table_21436373_11 WHERE attendance 54741Output 2 (base model): SELECT * FROM table_21436373_11 WHERE result_games name AND attendance 0; 步骤4将微调模型与LlamaIndex集成 我们现在可以在LlamaIndex中使用这个模型在任何数据库上进行文本到SQL。 我们首先定义一个测试SQL数据库然后可以使用该数据库来测试模型的推理能力。 我们创建了一个玩具city_stats表其中包含城市名称、人口和国家信息并用几个示例城市填充它。 db_file cities.dbengine create_engine(fsqlite:///{db_file})metadata_obj MetaData()# create city SQL tabletable_name city_statscity_stats_table Table( table_name, metadata_obj, Column(city_name, String(16), primary_keyTrue), Column(population, Integer), Column(country, String(16), nullableFalse),)metadata_obj.create_all(engine) 这存储在cities.db文件中。 然后我们可以使用Modal将微调后的模型和该数据库文件加载到LlamaIndex中的NLSQLTableQueryEngine中——该查询引擎允许用户轻松地开始在给定的数据库上执行文本到SQL。 modal run src.inference_sql_llamaindex::main --query Which city has the highest population? --sqlite-file-path nbs/cities.db --model-dir model_sql --use-finetuned-model True 我们得到如下回复 SQL Query: SELECT MAX(population) FROM city_stats WHERE country United StatesResponse: [(2679000,)] 三、结论 本文提供了一种非常高级的方法来开始微调生成SQL语句的Llama 2模型并展示了如何使用LlamaIndex将其端到端插入到文本到SQL工作流中。 参考文献 [1] https://blog.llamaindex.ai/easily-finetune-llama-2-for-your-text-to-sql-applications-ecd53640e10d [2] https://github.com/run-llama/modal_finetune_sql [3] https://github.com/run-llama/modal_finetune_sql/blob/main/tutorial.ipynb
http://www.hkea.cn/news/14263699/

相关文章:

  • html5网站制作分工竞价页面网站做优化
  • 制作销售网站有哪些问题网站顶部展出的大幅广告
  • 网站设置的流程第一步应该贵阳网站制作企业
  • 2003怎么建设网站空间网站界面设计的要求
  • 咸阳学校网站建设哪家好沈阳做网站优化哪家好
  • 北京模型设计制作关键词seo公司推荐
  • 公司做分享网站好吗深圳天琥室内设计学校
  • 国外的电商网站有哪些怎么入驻电商平台
  • 在网站做商城平台需要哪些资质免费logo在线制作设计
  • 百度网站介绍济南润滑油网站制作
  • 哪些是用vue做的网站网站怎么做双机房切换
  • 建设游戏运营网站开展工作内容沈阳手机网站制作
  • 河南新蔡有做网站建设的吗从零开始学编程
  • 鸿邑科技 网站建设国外网站源码
  • 淘宝客网站主题下载室内设计的公司有哪些
  • 企业网站建设小技巧有哪些logo字体设计在线生成
  • 昆明建站网址常州网站建设包括哪些
  • 深圳高端网站制作价格如何做企业第一管理人
  • 北京 企业建网站小学六年级做的网站
  • 保定市网站设计百度广告搜索引擎
  • 网站建设找哪个好淮南做网站公司
  • 网站开发后 怎么换前端网站后台用户名不存在
  • seo模板建站二次开发收费需要高点
  • 大理住房和城乡建设局网站在车子男女做的视频网站
  • 东红物流网站建设规划书wordpress在哪里下载地址
  • 手机网站触摸版坪地网站建设市场
  • 小伙做网站云阳一平米网站建设
  • ps网站主页按钮怎么做管理咨询公司收费
  • 北京建设执业网站网站设计师的工作环境
  • 汕头市通信建设管理局网站重庆关键词排名推广