Function-Call入门
大模型相当于是大脑他需要Function-Call 是给大模型加上手脚才能更大限度的发挥他的能力。本文介绍大模型调用 “计算器” 这个工具完成自然语言计算器的功能。官网地址https://trpc-group.github.io/trpc-agent-go/zh/tool/import(contextfmtlogostrpc.group/trpc-go/trpc-agent-go/agent/llmagenttrpc.group/trpc-go/trpc-agent-go/modeltrpc.group/trpc-go/trpc-agent-go/model/openaitrpc.group/trpc-go/trpc-agent-go/runnertrpc.group/trpc-go/trpc-agent-go/tooltrpc.group/trpc-go/trpc-agent-go/tool/function)funcmain(){os.Setenv(OPENAI_API_KEY,os.Getenv(AI_DEEPSEEK_API_KEY))// 仅测试时使用os.Setenv(OPENAI_BASE_URL,https://api.deepseek.com/v1)// 创建模型modelInstance:openai.New(deepseek-v4-pro)// 创建工具calculatorTool:function.NewFunctionTool(calculator,function.WithName(calculator),function.WithDescription(执行加减乘除。参数a、b 为数值op 取值 add/sub/mul/div返回 result 为计算结果。),)// 启用流式输出genConfig:model.GenerationConfig{Stream:true,}// 创建 Agentagent:llmagent.New(assistant,llmagent.WithModel(modelInstance),llmagent.WithTools([]tool.Tool{calculatorTool}),llmagent.WithGenerationConfig(genConfig),)// 创建 Runnerrunner:runner.NewRunner(calculator-app,agent)// 执行对话ctx:context.Background()events,err:runner.Run(ctx,user-001,session-001,model.NewUserMessage(计算 1003 等于多少),)iferr!nil{log.Fatal(err)}// 处理事件流forevent:rangeevents{ifevent.Objectchat.completion.chunk{fmt.Print(event.Response.Choices[0].Delta.Content)}}// 附带调试信息//for event : range events {// fmt.Printf(Event Object: %s, Error: %v, Response: %v\n, event.Object, event.Error, event.Response)// if event.Object chat.completion.chunk len(event.Response.Choices) 0 {// fmt.Print(event.Response.Choices[0].Delta.Content)// }//}fmt.Println()}funccalculator(ctx context.Context,req calculatorReq)(calculatorRsp,error){varresultfloat64switchreq.Op{caseadd,:resultreq.Areq.Bcasesub,-:resultreq.A-req.Bcasemul,*:resultreq.A*req.Bcasediv,/:resultreq.A/req.B}returncalculatorRsp{Result:result},nil}typecalculatorReqstruct{Afloat64json:aBfloat64json:bOpstringjson:op}typecalculatorRspstruct{Resultfloat64json:result}

相关新闻

最小二乘问题详解12:三角化中的非线性优化

最小二乘问题详解12:三角化中的非线性优化

最小二乘问题详解12:三角化中的非线性优化 引言在计算机视觉与多视图几何中,三角化(Triangulation)是核心问题之一:给定两个或多个已标定相机下的图像点对应,如何恢复三维空间中的点坐标?当相机…

2026/7/24 11:25:50 阅读更多 →
专科生必备AI论文工具:从选题到答辩全流程指南

专科生必备AI论文工具:从选题到答辩全流程指南

1. 为什么专科生更需要AI论文辅助工具作为指导过上百篇专科毕业论文的过来人,我深刻理解专科同学在论文写作中面临的特殊困境。与本科教育不同,专科培养更侧重职业技能训练,导致很多同学在学术写作规范、文献检索能力、理论分析深度等方面存在…

2026/7/24 11:24:50 阅读更多 →
深度评测|主流 GEO 生成式优化引擎工具横向对比与性能实测(2026)

深度评测|主流 GEO 生成式优化引擎工具横向对比与性能实测(2026)

评测概述 当品牌内容进入 ChatGPT、Perplexity、Google AI Overviews 的回答而非传统搜索结果页,生成式引擎优化(GEO, Generative Engine Optimization) 成为新的流量入口命题。本文选取四款在 2026 年仍较为主流的 GEO / 答案引擎 visibili…

2026/7/24 11:24:50 阅读更多 →

最新新闻

Linux进程优先级管理与调度优化指南

Linux进程优先级管理与调度优化指南

1. 进程优先级基础概念 在Linux系统编程中,进程优先级决定了CPU资源分配的先后顺序。就像医院急诊科的分诊系统,病情危急的患者会优先得到救治。Linux内核通过动态优先级和静态优先级两个维度来管理进程调度。 静态优先级(static priority&a…

2026/7/24 11:30:51 阅读更多 →
【计算机毕业设计案例】基于 Web 的智能宿舍隐患排查管理平台基于Django的高校宿舍智能登记与后勤服务系统(程序+文档+讲解+定制)

【计算机毕业设计案例】基于 Web 的智能宿舍隐患排查管理平台基于Django的高校宿舍智能登记与后勤服务系统(程序+文档+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/24 11:30:51 阅读更多 →
AI辅助学术写作:如何避免抄袭并提升效率

AI辅助学术写作:如何避免抄袭并提升效率

1. 项目背景与核心痛点去年指导本科生论文时,我发现一个普遍现象:超过70%的学生在开题阶段就陷入"学术写作恐惧症"。他们并非缺乏专业知识,而是面对空白的文档时,根本不知道如何将零散的知识点组织成符合学术规范的文本…

2026/7/24 11:30:51 阅读更多 →
【计算机毕业设计案例】基于 Web 的跨区域通勤健康运维管理系统基于Django的日常通勤人员健康档案动态管理系统(程序+文档+讲解+定制)

【计算机毕业设计案例】基于 Web 的跨区域通勤健康运维管理系统基于Django的日常通勤人员健康档案动态管理系统(程序+文档+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/24 11:30:51 阅读更多 →
AI误报率优化:动态阈值与误报溯源技术解析

AI误报率优化:动态阈值与误报溯源技术解析

1. 项目背景与核心价值去年在一次行业交流会上,我注意到一个有趣的现象:当大家都在讨论如何提升AI模型准确率时,几位资深从业者却在私下交流"如何合理降低AI系统的误判率"。这个看似矛盾的需求背后,隐藏着企业级AI应用的…

2026/7/24 11:30:51 阅读更多 →
AI智能体六大设计模式解析与应用实践

AI智能体六大设计模式解析与应用实践

1. AI智能体设计模式概述在当今大模型技术快速发展的背景下,AI智能体已经成为连接人工智能能力与实际业务场景的重要桥梁。不同于传统的单一功能AI系统,现代智能体具备自主感知、决策和执行能力,能够完成更复杂的任务链。经过大量项目实践&am…

2026/7/24 11:29:51 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

2026/7/24 0:00:29 阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:29 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/23 17:49:47 阅读更多 →

月新闻