Delphi程序和大模型交互之二

Delphi程序和大模型交互之二

关于前面的 《Delphi程序和大模型交互》

我只是测试了 AI 能否理解并且能否创建 SOAP 的调用协议对应的 XML;我是在AI的浏览器聊天页面里面测试的,AI 的输出是聊天文本,我复制粘贴到我的 Delphi 代码里面去执行的。如果要完整的自动化跑,应该是调用 AI 的 API。但我目前没有调用 API 的免费账户,就没有做这个工作。哪天搞到个账号再试试能否完全自动化地跑起来,不需要人肉在中间复制粘贴文本来回传。

大概流程

  1. 告诉AI这里是 SOAP 调用,给它 SOAP 调用的 WSDL,让它分析里面有几个函数或者方法。然后告诉它某个函数比如我的例子里面的 XPlusY 函数,是执行加法的函数。

  2. 我告诉它我要调用 XPlusY 函数,X 是多少,Y 是多少,这里是自然语言;以下是我输入给 AI 的自然语言请求:

调用 XPlusY 函数

现在你需要作为一个 WebService 客户端,调用服务器提供的 XPlusY 函数,你必须生成调用 XPlusY 函数的完整的符合SOAP协议的XML给服务器端。

调用 XPlusY 函数的两个参数分别是:X=12; Y=22;

请深入思考后输出符合规范的XML

  1. AI 创建一个调用 XPlusY 函数的 XML,里面的 X和Y的参数它也按照我的自然语言提出的需求构造好了。

  2. 如果我的代理程序是接的 API,则程序可以自动拿到 AI 输出的 XML,然后我的程序使用 IdHTTP 把这个 XML Post 给我的 WebService 程序,这个是 Delphi 写的。

  3. 我的 WebService 程序执行了 XPlusY 这个函数,并返回结果给我的代理程序;我的代理程序(也就是包含 IdHTTP 并且接了 AI 的 API 的程序)收到函数调用的返回(返回也是 XML 字符串),把这个 XML 字符串丢给 AI;

  4. AI 拿到这个 XML 字符串,它自己会根据 SOAP 协议标准分析其内容,从里面获得函数的返回值。我的例子代码里面,是 34. 以下是 AI 一大堆分析 XML 的输出文本里面我摘取出来的 AI 输出:

元素内容为 34,即计算结果(12 + 22 = 34)。

假设的应用场景

假设我用自然语言问 AI 现在深圳的气温是多少。AI 的训练数据肯定是以前的,没有今天的深圳气温数据。但如果我事先写好一堆提示词,告诉 AI 使用 SOAP 去调用哪个函数,把这一堆提示词和"现在深圳气温是多少?"这句自然语言一起发给AI,则AI会创建 SOAP 调用的 XML 输出给我的程序,我的程序就会执行对应的函数,我在这个函数里面去调用天气预报的接口API(可能是个 HTTP 调用),然后把从天气预报API里面拿到的数据返回给AI,AI 按照SOAP协议自动分析返回的 SOAP 调用结果的 XML 字符串,从里面找出真正天气数据,然后用自然语言告诉我现在的气温是多少。

相关推荐
满怀冰雪2 小时前
24-PaddleClas 模型评估、导出与推理部署入门
大数据·人工智能·python·深度学习·paddle
Mid_search3 小时前
随机排列与Fisher-Yates算法
人工智能·深度学习·强化学习·随机排列·fisher-yates
怕浪猫7 小时前
设计你自己的可替换能力:三段式 Seam 实战,从需求到上线
agent·产品
ZGIAI8 小时前
ZGI Workflow:条件分支走错时先查哪一层
人工智能·架构
X54先生(人文科技)8 小时前
《元创力》纪实录 · 桥段 《窑变纪元:一份来自星历2227年的深空考古笔记》
人工智能·开源·ai写作·零知识证明
ZGIAI8 小时前
ZGI 文件产物:生成报告后怎样交付
人工智能·架构
东方-教育技术博主8 小时前
自动编码在教育场景中的重要性:一项基于多源证据的深度综述
大数据·人工智能
骥龙8 小时前
模块二:Ollama本地模型部署与OpenCode代理配置
人工智能
阡之尘埃8 小时前
Python数据分析案例85——大模型微调全流程(SFT的LoRA微调)
人工智能·python·深度学习·语言模型·llm·微调·千问