Navigate to WaytoAGI Wiki →
Home/Question List/Question Detail

大模型调用tools

Answer

目前,绝大多数小型本地开源大语言模型以及部分商用大模型接口通常不支持稳定的 tool calling 功能。现有的解决方案多为微调 LLM,但会浪费大量时间和算力。有一种新的方法,即仅使用提示词工程和精巧的代码设计,就能让 LLM 获得稳定的 tool calling 能力。

通过多个不具备 tool calling 能力的 LLM 进行实验,结果显示所有模型都能成功执行调用工具这一步,并正确输出能被正则表达式抓取的字典。但在使用 python 解释器任务上,ollama 量化版本的 llama3-8b 和 mistral-7b 模型受限于代码生成水平,不能很好地输出正确代码,导致无法稳定完成计算任务。在搜索知识图谱任务上,所有模型都能让工具返回相关知识,但 ollama 量化版本的 qwen2-7b 和 mistral-7b 模型受限于逻辑理解能力,不能稳定理解知识图谱中多个关系边之间的逻辑关系。实验证明提示词工程可让 LLM 获得 tool calling 能力,但能否利用工具返回的信息解决用户问题,仍受 LLM 自身智能水平限制,较大的模型(如 gemma2-9b)对工具返回结果的利用能力更稳定。

在大模型请求中,最大的两个变量是 Messages 和 Tools。Messages 里放的是 sys prompt、memory、user query;Tools 里放的是一些能力的 Json Scheme,两者组合形成整个完全的 Prompt。Agent 应用开发的本质是动态 Prompt 拼接,通过工程化手段将业务需求转述成新的 prompt。短期记忆是 messages 里的历史 QA 对,长期记忆是 summary 之后的文本再塞回 system prompt。RAG 是向量相似性检索,可放在 system prompt 里或通过 tools 触发检索。Action 是触发 tool_calls 标记,进入请求循环,拿模型生成的请求参数进行 API request,再把结果返回给大模型进行交互,没有 tool_calls 标记则循环结束。Multi Agents 则是更换 system prompt 和 tools。当然,想做深做好肯定还有很多坑需要踩。

Content generated by AI large model, please carefully verify (powered by aily)

References

无需微调,仅用提示词工程就能让 LLM 获得 tool calling 的功能

大家好,我是一个开源项目作者ailm。目前,绝大多数小型本地开源大语言模型以及部分商用大模型接口都不支持稳定的tool calling功能。而现有的解决方案是微调LLM,这导致大量的时间和算力被浪费。本文提出一种仅使用提示词工程和一些精巧的代码设计,即可让LLM获得稳定的tool calling能力。本文使用多个不具备tool calling能力的LLM作为测试模型,在多个工具调用任务上进行实验,成功率为100%。本文所有工作是基于comfyui开发,适合完全没有代码基础的小伙伴们复现并且按自己的想法修改我的工作。

无需微调,仅用提示词工程就能让 LLM 获得 tool calling 的功能

表格1中,所有模型都能成功执行调用工具这一步,正确输出了能被正则表达式抓取的字典,但是受限于代码生成水平限制,在使用python解释器任务上,ollama量化版本的llama3-8b和mistral-7b模型不能很好地输出正确的代码,导致无法稳定的完成计算任务。在搜索知识图谱任务上,所有模型都成功让工具返回了相关的知识,但是受限于逻辑理解能力限制,ollama量化版本的qwen2-7b和mistral-7b模型不能稳定地理解知识图谱中多个关系边之间的逻辑关系。该实验结果证明,提示词工程可以让完全不具备tool calling能力的LLM获得tool calling能力,但是能否真正利用上工具返回的信息,从而解决用户的问题,还是受限于LLM自身的智能水平,在较大的模型(gemma2-9b)上,对工具返回的结果的利用能力明显更加的稳定。下图为gemma2-9b调用天气工具时的输出结果:当不使用提示词工程时,图中is_tools_in_sys_prompt属性为disable,gemma2-9b模型的接口直接拒绝了tool输入。当使用提示词工程时,图中is_tools_in_sys_prompt属性为enable,gemma2-9b模型给出了正确的实时天气信息。

有用Agent产品开发踩坑及思考

其实只要看过官方文档的应该都能知道,大模型请求中,最大的两个变量:Messages和Tools。Messages里面放的是sys prompt,memory,user query;Tools里面放的是一些能力的Json Scheme;而这两者组合在一起,就形成整个完全的Prompt。所以Agent应用开发的本质是什么?动态Prompt拼接。通过工程化的手段,不断把业务需求转述成新的prompt。短期记忆:messages里的历史QA对;长期记忆:summary之后的本文,再塞回system prompt;RAG是啥?向量相似性检索,然后放在system prompt里或者通过tools触发检索Action:触发tool_calls标记,进入请求循环,拿模型生成的请求参数进行API request,再把结果返回给大模型进行交互;没有tool_calls标记了,循环结束。对应页面上就是对话一轮对话结束。Multi Agents是啥?把system prompt和tools换一换,A就变成B了。还有啥?没了呀,本质就是这些东西。当然,这也就是最基本的原理,想做深,做好,肯定还有很多坑需要踩。

Others are asking
Name card design AI tools
以下是一些设计名片的 AI 工具: 1. Canva(可画):https://www.canva.cn/ 是非常受欢迎的在线设计工具,提供大量模板和设计元素,用户通过简单拖放操作创建海报,其 AI 功能可帮助选择合适颜色搭配和字体样式。 2. 稿定设计:https://www.gaoding.com/ 稿定智能设计工具采用先进人工智能技术,自动分析和生成设计方案,稍作调整即可完成完美设计。 3. VistaCreate:https://create.vista.com/ 简单易用的设计平台,提供大量设计模板和元素,用户可使用 AI 工具创建个性化海报,智能建议功能可帮助快速找到合适设计元素。 4. Microsoft Designer:https://designer.microsoft.com/ 通过简单拖放界面,用户可快速创建演示文稿、社交媒体帖子等视觉内容,还集成丰富模板库和自动图像编辑功能,如智能布局和文字优化,简化设计流程。 此外,一泽 Eze 提出通过 1 句提示词和 1 个品牌 Logo 即可利用 Claude Artifacts(非 AIGC 文生图产品)生成超级符合品牌调性的创意名片,整个流程简单,生成过程中需注意提示词目的是设计符合品牌调性的创意名片,Logo 建议使用清晰、底图透明的 PNG 格式,若生成结果不符合预期,可尝试让模型重新生成或与 AI 对话提出修改意见。 以下是一些生成 Logo 的 AI 产品: 1. Looka:在线 Logo 设计平台,使用 AI 理解用户品牌信息和设计偏好,生成多个设计方案供选择和定制。 2. Tailor Brands:AI 驱动的品牌创建工具,通过回答系列问题生成 Logo 选项。 3. Designhill:Logo 制作器使用 AI 技术创建个性化 Logo,用户选择不同元素和风格,AI 生成设计方案。 4. LogoMakr:提供简单易用的 Logo 设计工具,用户拖放设计,利用 AI 建议的元素和颜色方案。 5. Canva:广受欢迎的在线设计工具,提供 Logo 设计模板和元素,利用 AI 辅助设计建议创建品牌标识。 6. LogoAI by Tailor Brands:Tailor Brands 推出的 AI Logo 设计工具,根据输入快速生成设计方案。 7. 标小智:中文 AI Logo 设计工具,利用人工智能技术帮助创建个性化 Logo。 您还可以访问网站的 AI 生成 Logo 工具版块获取更多好用的工具:
2025-02-20
which tools can help me write perfect essay?
在论文写作方面,以下是一些能够帮助您写出完美论文的工具: 1. 文献管理和搜索: Zotero:结合 AI 技术,能自动提取文献信息,便于管理和整理参考文献。 Semantic Scholar:由 AI 驱动的学术搜索引擎,提供文献推荐和引用分析。 2. 内容生成和辅助写作: Grammarly:通过 AI 技术进行文本校对、语法修正和写作风格建议,提升语言质量。 Quillbot:基于 AI 的重写和摘要工具,可精简和优化论文内容。 3. 研究和数据分析: Google Colab:提供基于云的 Jupyter 笔记本环境,支持 AI 和机器学习研究,方便进行数据分析和可视化。 Knitro:用于数学建模和优化的软件,助力复杂数据分析和模型构建。 4. 论文结构和格式: LaTeX:结合自动化和模板,高效处理论文格式和数学公式。 Overleaf:在线 LaTeX 编辑器,有丰富模板库和协作功能,简化编写过程。 5. 研究伦理和抄袭检测: Turnitin:广泛使用的抄袭检测工具,确保论文原创性。 Crossref Similarity Check:通过与已发表作品比较,检测潜在抄袭问题。 此外,在 AIGC 论文检测方面,常用的网站和工具包括: 1. Turnitin:广泛使用的学术剽窃检测工具,新增检测 AI 生成内容的功能。使用时上传论文,系统自动分析并提供报告,标示出可能由 AI 生成的部分。 2. Copyscape:主要检测网络剽窃行为,虽非专门的 AIGC 检测工具,但能发现可能被 AI 生成的重复内容。输入文本或上传文档,系统扫描网络查找相似或重复内容。 3. Grammarly:提供语法检查和剽窃检测功能,其剽窃检测部分可识别可能由 AI 生成的非原创内容。将文本粘贴到编辑器中,选择剽窃检测功能,系统提供分析报告。 4. Unicheck:基于云的剽窃检测工具,适用于教育机构和学术研究,能检测 AI 生成内容的迹象。上传文档或输入文本,系统分析生成报告,显示潜在剽窃和 AI 生成内容。 5. :专门设计用于检测 AI 生成内容的工具,使用先进算法分析文本,识别是否由 GPT3 或其他 AI 模型生成。上传文档或输入文本,系统提供详细报告。 在构建外脑和知识管理方面,以作者自身习惯为例,在确定写长文输出前,先整理信息结构和叙事框架,若涉及不熟悉或新兴领域,需提前阅读相关书籍或博客。Notion 是主要的信息整理工具,为主题建立 PAGE 用于关联链接收藏、深度阅读摘录和创作草稿,最终通过 Google Docs 汇总成文输出。输出即学习,所有输入都是为了合适的表达。目前可能不存在搭建理想外脑的完美工具集,新工具应具备的特性将在后续讨论。
2024-10-06
基础搭建的知识库效果很差,模型答案的幻觉很严重,我应该怎么改进?(Deepseek调用api接入本地faiss的rag库)
以下是一些改进基础搭建的知识库效果、减轻模型答案幻觉问题的建议: 1. 更换大模型:例如从 ChatGLM26B 替换成 baichuan213b,针对您的场景,后者的性能可能提升一倍左右。 2. 更换 embedding 模型:将 embedding 模型从 LangChain Chatchat 默认的 m3ebase 替换为 bgelargezh,后者可能更优。 3. 测试不同 Top k 的值:比较 Top 5、Top 10、Top 15 的结果,发现 Top 10 时效果可能最优。 4. 对文档名称进行处理:人工对文件进行重命名,上传相同文件构建知识库,同时在构建知识库时勾选【开启中文标题加强】选项,虽然重命名文件对结果的提升效果不明显,但勾选该选项后,回答的无关信息可能减少,效果有所提升。 RAG(RetrievalAugmented Generation)即检索增强生成,由检索器和生成器两部分组成。检索器从外部知识中快速找到与问题相关的信息,生成器利用这些信息制作精确连贯的答案,适合处理需要广泛知识的任务。 在大模型中,向量可想象成空间中的点位,每个词或短语对应一个点。系统通过查看词在虚拟空间中点的位置,寻找直线距离最近的点来检索语义上接近的词语或信息。理解向量后,当收到一个对话时,RAG 的完整工作流程为:检索器从外部知识中检索相关信息,生成器利用这些信息生成答案。 要优化幻觉问题和提高准确性,需要了解从“问题输入”到“得到回复”的过程,针对每个环节逐个调优,以达到最佳效果。
2025-02-27
Claude3/grok3/Gemini使用API调用时消耗token的价格是?
Claude 3 的 API 调用价格为:每百万输入 token 0.25 美元,每百万输出 token 1.25 美元。可以处理和分析 400 起最高法院案件或 2500 张图片只需 1 美元。相关链接:https://x.com/imxiaohu/status/1768284259792691366?s=20
2025-02-27
如何调用ai的模型
以下是关于如何调用 AI 模型的相关内容: Liblibai 简易上手教程: 1. 首页 模型广场:发布了其他用户炼成的模型。收藏和运行数较多的模型在首页前排,点击可查看详细信息,将模型加入模型库可用于生图时快速调用。模型详情下方有返图区。 Checkpoint:生图必需的基础模型,任何生图操作必须选定一个 Checkpoint 模型才能开始。注意与 lora 的区别,两者在模型广场混着展示,Checkpoint 必选,lora 可选可不选。 lora:低阶自适应模型,可理解为 Checkpoint 的小插件,对生图的面部、材质、物品等细节有控制作用,可加入模型库。 VAE:编码器,功能类似于滤镜,调整生图饱和度,选择 840000 即可。 CLIP 跳过层:用于生成图片后控制、调整构图变化,一般设为 2,早期不用过多关注。 Prompt 提示词:想要 AI 生成的内容,需学习。 负向提示词 Negative Prompt:想要 AI 避免产生的内容,需学习。 采样方法:决定让 AI 用何种算法生图。 COW 项目: 1. 调用千问系列的模型:可以直接使用 key、选择 model 进行调用,即直接调用某一个大模型。 2. 调用应用能力:阿里云百炼的“应用”服务。当需要更多能力如工作流、搜索等时,调用百炼的“应用”。在百炼平台里的“应用”类似于 Coze 中的“bot”或 ChatGPT 的 GPTs 概念。有两种调用方式: 直接调用模型:对接简单,调试不方便。 调用应用(bot):对接相对麻烦,调试简单,推荐使用。修改和调整 Prompt 时,只需要在“百炼”应用里进行调试。 AI 调用外部工具: AI 本身不会直接调用工具,也不是依赖关键词识别。实际流程为: 1. 程序调用 AI 接口,AI 生成 JSON 结构化数据,告知是否需要工具、使用何种工具及参数。 2. 程序解析 JSON 并调用工具,获取结果后返回 AI。 3. AI 根据工具返回的数据生成最终回答。
2025-02-27
Batch调用是什么意思
在 LangChain 应用开发中,Batch 调用是一种处理多个主题的方式。例如,调用笑话对象时,传入一个主题字符串的列表,就可以得到一个笑话字符串的列表,如 joke.batch。它能够同时处理多个任务,提高处理效率。
2025-02-25
表格内填充的内容如何批量循环调用大模型生成内容
以下是关于表格内填充内容如何批量循环调用大模型生成内容的相关信息: 大模型生成文字并非一次性输出整段,而是通过反复调用神经网络模型,一个字一个字地续写,直到输出结束符号。其输出不是确定的一个字,而是所有字的概率,可选择概率高的字或随机挑选。 在生成标题、导语、大纲等涉及文本理解与创作的任务时,可通过配置 LLM 节点来实现。为节省 token 消耗和模型调度费用,在满足预期的情况下,应减少大模型处理环节。例如,豆包·function call 32k 模型能在一轮对话中稳定生成这些内容。配置时要关注节点的各项设置,如根据实际情况调大模型的最大回复长度,并设计填入用户提示词。
2025-02-24
你调用的是哪个大模型?
我调用的是抖音集团的云雀大模型。在一些项目中,还会涉及到其他大模型的调用,比如在 COW 项目中可直接调用千问的某一模型,需更改 key 和 model 等操作,且要实名认证。此外,军师联盟 BOT 工作流中会调用月之暗面 KIMI、豆包、Minimax、通义千问和智谱清言这五个大模型。
2025-02-14
如何让大模型输出结构化的数据
要让大模型输出结构化的数据,可以采取以下几种方法: 1. 设计合理的 Prompt 工程: 明确的待处理内容指引:在构建 Prompt 时,清晰地定义需要处理的文本,并使用标记框起来,让模型准确识别待处理内容范围。 提供明确字段定义:具体化每个字段的名称、用途及要求,为模型提供清晰的提取方向。 异常处理:设置异常处理原则,如规定缺失数据使用默认值填充,特殊数据类型符合标准格式,确保模型输出的完整性和一致性。 要求结构化输出:指示模型以结构化格式(如 JSON)输出数据,便于后续处理和系统集成。 2. 搭建工作流: 模型选择:根据需求选择合适的大模型,如默认的豆包 32k 或更大的 kimi128k 等。 配置参数:进行批处理,输入相关参数,如文章内容正文、url 链接和标题等。 提示词输入:将相关内容一起送给大模型进行总结,并拼接成特定格式输出。 汇总格式化最终输出内容:使用代码节点对大模型输出的内容进行最终格式化。 3. 探索 JSON Output 应用: 无模板的 Excel 导入:改变传统数据导入方式,通过 Prompt 读取想要的数据列。 AI 审核员:在人审环节前加 AI 审,提供相关知识和少量示例,输出简单结果。 分类器:一个 Prompt 即可完成分类任务。 应用于其它业务场景:如在一些业务场景中落地,提高效率。 但需要注意的是,过去大模型还不太成熟,应用过程可能会有一些困难。
2025-02-27
个人有没有必要本地部署deepseek模型
个人是否有必要本地部署 DeepSeek 模型取决于多种因素。 DeepSeek 模型的权重文件开源,可本地部署。其公司名为“深度求索”,网页和手机应用目前免费,但 API 调用收费。 在云端模型部署方面,有实操演示和使用方法讲解,包括登录 Pad 控制台、选择框架、资源、出价等,还介绍了查看部署状态和日志的方法,以及用 Postman 在线调试模型获取名称及后续使用方式。 在模型部署相关内容中,部署时使用 V1 chat completion s 接口,要注意模型名称、大小写等。同时布置了作业为成功部署大语言模型并调试,提交带钉钉昵称的截图。还讲解了 API 调用方法、费用、停止服务方式等,提醒注意保密 API key,若竞不到价可加价尝试进行本地蒸馏模型部署。 模型蒸馏方面,先介绍云平台部署情况,接着讲解模型蒸馏概念、方式,阐述其应用场景及修复模型幻觉的作用,并进行了实操演示。 综合来看,如果您对数据隐私有较高要求、需要定制化的模型服务、有足够的技术能力和资源来进行本地部署和维护,或者在网络不稳定的情况下使用,那么本地部署可能是有必要的。但如果您的需求相对简单,且不具备相关技术条件和资源,使用云端服务可能更为便捷。
2025-02-27
行业大模型构建
以下是关于行业大模型构建的相关信息: 优秀模型案例介绍: SuperCLUE2.0 是通用大模型综合性测评基准 SuperCLUE1.0 的能力延展,融合行业场景属性和大模型落地特点,为行业应用及开发者构建评估框架,促进大模型供需两侧的进一步对齐。 SuperCLUE 持续构建行业测评基准,包括已发布的汽车行业测评基准,以及筹备中的金融、教育、娱乐、手机、政务、医疗等行业测评基准。 SuperCLUE 持续构建专项测评基准,已发布的有 Safety 安全测评基准、Agent 智能体测评基准,筹备中的有个性化中文测评基准、角色扮演测评基准、中文多模态测评基准、RAG 检索增强测评基准、办公场景测评基准等。 优化路径: 广义上的大模型优化包括完整训练一个大模型,但从策略上建议先从提示词工程到微调开始,因为涉及大模型训练成本极高。在分析出问题所在后,可按需选用或综合运用缺失知识用 RAG、准确度或模式遵循度不足用微调等技术进行性能优化。 国内大模型落地情况: Gartner 预测到 2028 年至少有 15%的日常工作决策将由代理型 AI(AI 智能体)自主做出。 2024 年被称为国内大模型落地元年,“百模大战”后,国内大模型行业主要玩家包括百度、阿里、字节等科技大厂和创业“AI 六小虎”。 2024 年 1 至 11 月,国内大模型中标项目数量和金额大幅增长,中标项目共 728 个,是 2023 年全年的 3.6 倍;中标金额 17.1 亿元,是 2023 年全年的 2.6 倍。中标项目数前五的行业分别是运营商、能源、教育、政务、金融。 厂商方面,百度以 40 个中标项目数、2.74 亿元的中标金额排名所有厂商之首,科大讯飞居第二。在金融行业,百度也以 14 个中标数量、3734.4 万元中标金额排名第一,科大讯飞居第二。
2025-02-27
如何用AI构建政务模型
以下是关于如何用 AI 构建政务模型的相关信息: 行业、学术界、研究组织和全球合作伙伴正在寻找解决基础模型监管相关挑战的方法。例如,基础模型的开发者正在探索将对齐理论嵌入模型的方式,政府需要与 AI 研究社区密切合作,利用研究见解并完善监管框架。 英国致力于提升在基础模型方面的能力。基础模型是一种新兴的通用 AI 类型,训练数据量大,能适应多种任务,其快速发展给政府监管带来新挑战。 需建立一个中央职能,支持单个监管机构的视野扫描活动,以实现可适应、协作和值得信赖的监管机制。该职能有助于建立一个能适应新兴趋势、召集合作伙伴共同识别趋势,并确保监管框架能应对新兴趋势的监管制度。 要确保与国际监管框架的互操作性,包括监测英国原则与国际监管方法、保证和/或风险管理以及技术标准之间的一致性,支持跨境协调与合作。此职能对于实现促进创新的监管制度至关重要,能确保英国创新者可进行国际交易,英国公司能吸引海外投资。
2025-02-27
企业建立私有大模型时候,采用什么工具进行RAG,高效实习企业知识文档、表格和pdf图纸的向量化
企业建立私有大模型进行 RAG 并实现企业知识文档、表格和 PDF 图纸向量化时,可参考以下工具和方法: 1. 本地部署资讯问答机器人: 导入依赖库,如 feedparse 用于解析 RSS 订阅源,ollama 用于在 Python 程序中跑大模型(使用前需确保 ollama 服务已开启并下载好模型)。 从订阅源获取内容,通过专门的文本拆分器将长文本拆分成较小的块,并附带相关元数据,最终合并成列表返回。 为文档内容生成向量,可使用文本向量模型 bgem3,从 hf 下载好模型后,假设放置在某个路径 /path/to/bgem3,通过函数利用 FAISS 创建高效的向量存储。 2. 开发:LangChain 应用开发指南 大模型的知识外挂 RAG 加载数据,根据数据源类型选择合适的数据加载器,如网页可使用 WebBaseLoader。 将文档对象分割成较小的对象,根据文本特点选择合适的文本分割器,如博客文章可用 RecursiveCharacterTextSplitter。 将文档对象转换为嵌入并存储到向量存储器中,根据嵌入质量和速度选择合适的文本嵌入器和向量存储器,如 OpenAI 的嵌入模型和 Chroma 的向量存储器。 创建检索器,使用向量存储器检索器,传递向量存储器对象和文本嵌入器对象作为参数创建检索器对象。 创建聊天模型,根据性能和成本选择合适的聊天模型,如 OpenAI 的 GPT3 模型。 以下是使用 LangChain 构建 RAG 应用的示例代码。
2025-02-27