1.9 KiB
Raw Permalink Blame History

最简单的对话

和其他所有的 Agent 框架一样,你可以利用 openmcp-sdk 完成一个和大模型最简单的文本交互。这只需要几行代码就能轻松完成。

创建 agent

openmcp-sdk 通过如下语句可以快速创建一个 agent 实例:

import { OmAgent } from 'openmcp-sdk/service/sdk';

const agent = new OmAgent();

它是我们后续一切工作的基础。

设置大模型

通过 setDefaultLLM 可以设置默认的大模型。此处以 deepseek 为例:

agent.setDefaultLLM({
    baseURL: 'https://api.deepseek.com',
    apiToken: 'sk-xxxxxxxxxxxxxxxx',
    model: 'deepseek-chat',
});

:::tip 为了防止 api key 在代码中,从而泄漏,我们建议通过环境变量来输入:

在您的 bashrc 或者 zshrc 文件中添加如下内容:

export OPENMCP_API_TOKEN=sk-xxxxxxxxxxxxxxxx

然后修改上述代码:

agent.setDefaultLLM({
    baseURL: 'https://api.deepseek.com',
    apiToken: process.env['OPENMCP_API_TOKEN'],
    model: 'deepseek-chat',
});

:::

其他的大模型接入参数请参考各个大模型厂家自己的文档说明。

发送对话

通过 ainvoke 方法,我们可以直接把文本发送给大模型完成一次交互和对话:

const result = await agent.ainvoke({ messages: '你好,我是 LSTM-Kirigaya我的另一个名字是锦恢' });
console.log(result)

运行上面的代码,你会得到如下的回复:

你好LSTM-Kirigaya锦恢很高兴认识你  

你的名字结合了技术LSTM长短期记忆网络和动漫元素Kirigaya可能让人联想到《刀剑神域》的桐谷和人/桐人而“锦恢”这个中文名又很有诗意听起来像是一位对AI和二次元都充满热情的伙伴呢  

有什么想聊的吗无论是技术、ACG还是名字背后的故事我都乐意倾听