AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


语言大模型(llm)调用电脑工具tool call,让语音控制你的电脑
发布日期:2024-07-18 12:08:51 浏览次数: 1871


       最近在看一些RAG相关的东西,开源了RAG的项目Easy-RAG,好用又精致RAG搜索增强生成系统,一个精简的版本,适合学习、使用、自主扩展,欢迎大家对项目提出建议和优化点,感谢star

https://github.com/yuntianhe2014/Easy-RAG

本次分享的是 语言大模型llm 的工具调用,感觉挺好玩的,搞这个的原因是,大模型虽然能回答很多问题,创作文章和写代码,但是写完之后就停留在聊天记录中,为啥不能执行或者保存到指定位置、或者用电脑的软件去二次创造呢,哈哈其实是可以的,那就是 tool call,话不多说,直接上干货

先来看一下效果,告诉大模型 “帮我打开微软浏览器”,然后llm理解你的语意,去调用自定义函数去打开浏览器,哈哈


这次让他帮我写一篇论文,并且存储到E盘下

欣赏一下文章片段

##观赏美女对身心健康益处探讨
随着社会的发展和生活节奏的加快,人们对身心健康的关注度日益提高。如何有效地缓解压力、提升幸福感,成为人们关注的焦点。观赏美女,作为一种常见的文化现象和审美享受,其对身心健康的影响一直备受探讨。本论文将从多个角度分析观赏美女对身心健康的益处,并结合相关研究成果,阐述其潜在机制。
**一、观赏美女带来的生理益处**
研究表明,观赏美女可以刺激大脑分泌多巴胺和内啡肽等神经递质,这些物质具有镇静、舒缓、愉悦的作用,可以有效缓解压力、焦虑和抑郁情绪。同时,观赏美女还可以促进血液循环,提高心率和呼吸频率,增强身体活力。
**二、观赏美女带来的心理益处**
观赏美女可以激发人们的审美情趣,带来视觉上的享受,提升精神愉悦感。美人的形象往往与积极、乐观、自信等正面特征相联系,长期观赏美景,可以潜移默化地影响人们的思维方式,使其更加积极向上。此外,观赏美女还可以帮助人们放松心情,减轻工作和学习压力,提高注意力和效率。
**三、观赏美女的潜在机制**
观赏美女带来的身心健康益处,可能与以下机制有关:
***美感刺激**: 美女的形象符合人们的审美标准,能够刺激视觉系统,产生愉悦的感觉。
***神经递质分泌**:观赏美女可以激活大脑的奖励系统,促进多巴胺、内啡肽等神经递质的分泌,带来愉悦、放松、舒缓的作用。
***心理暗示**: 美女的形象往往与积极、乐观、自信等正面特征相联系,长期观赏美景,可以潜移默化地影响人们的思维方式,使其更加积极向上。
**四、注意事项**
虽然观赏美女可以带来一定的益处,但需要注意以下几点:
***保持理性**:观赏美女应保持理性,避免沉迷于视觉享受,影响正常的工作和学习。
***尊重他人**:欣赏美女的同时,应尊重她的个人尊严,避免以窥视、评判等方式对她进行侵犯。
***关注自身身心健康**:观赏美女应适度进行,不可过度沉浸,应关注自身的健康状况,避免造成心理压力或身体疲劳。
**结语**
观赏美女可以带来一定的生理和心理益处,但应保持理性、尊重他人、关注自身身心健康。在享受审美愉悦的同时,更应注重自身发展和社会责任,以更加积极、健康、和谐的态度面对生活。

哈哈,是不是可以,你开可以,让他发邮件给你,等等

开发介绍

本次使用的是langchain_experimental 包开发,他可以基于ollama的大模型,去注册tool,并且调用,

核心分为5部分

第一步:从ollama的接口获取大模型

model = OllamaFunctions(model='gemma2:9b', base_url='http://localhost:11434', format='json')

第二步:定义业务处理函数,可以是多个函数

def get_add(fir,sec):return fir+sec

第三步:业务处理函数映射

fn_map = {'get_add':get_add}

第四步:通过业务处理函数描述,把业务函数绑定到大模型上

llm_with_tool = model.bind_tools(tools=[{'name': 'get_add','description': '根据用户提供的fir和sec参数求和','parameters': {'type': 'object','properties': {'fir': {'type': 'float','description': '一个float类型的数值',}, 'sec': {'type': 'float','description': '一个float类型的数值',}},'required': ['fir','sec'],},}])

第五步:大模型处理输入并确定需要调用的业务函数,并实际调用业务函数

def chat_handler(chat_str):print("====================")print(f"user: {chat_str}")print("--------------------")ai_msg = llm_with_tool.invoke(chat_str)print(ai_msg.tool_calls)if ai_msg.tool_calls:fn_name = ai_msg.tool_calls[0]['name']fn_param = ai_msg.tool_calls[0]['args']print("ai:......")print(f"调用函数:{fn_name},参数:{fn_param}")res = fn_map[fn_name](**fn_param)print(f"函数返回值:{res}")else:print(ai_msg.content)return

好了,这就可以了,当然还需 ollama的支持

我测试了几个模型 qwen2:7b,gemma2:9b,GLM4:7b

发现还是 gemma2:9b在这里更好用,大家可以自行尝试

至于语音控制,只需要接一个语音接收器就可以了

哈哈

对rag刚兴趣的可以去看看Easy-RAG

https://github.com/yuntianhe2014/Easy-RAG


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询