左边的话是任何的单片机主流的话,比如 s t m 三二啊,这些单片机都是 ok 的, 只要有串口,那我们的 ai 模组的话就是右边这一块。呃,他和这个主控的单片机是通过串口协议进行 双向交流的。我们 ai 模组所有的这些指令啊,我们全部都已经封装好了 sdk 啊,你不需要去一个一个豹纹去自己去实现啊,到时候直接用我们封装好的这个 sdk 的 这些方法,所以你们使用起来是非常方便的,记得点赞关注哦。
粉丝764获赞2110

背景相信大家都使用过 mevin, 我们平时要使用公共的 pi, 只需要导入 meven 依赖即可,然后就可以直接吊用里面的方法了, 非常的方便。最近的项目有个需求,需要将业务系统与公司内部的物业系统做交互,比如业务系统的任务代办要发到物业系统的代办中,还要发送物理邮件等, 还需要通过 oe 登录业务系统等。其实上面的操作比较简单,我们只需要通过 htp 远程调用 oe 的接口即可, 将接口封装完毕后调用测试一切顺利。但是我们的系统实际上是有很多子系统构, 今天我在这个系统里封装了奥迪接口,明天在另外一个系统可能还要需要使用,那么可能又要封装一次, 那么自己何不做成一个公共的 sdk 呢?这样只要有需要的系统引入依赖,即可实现轻松调用,说干就干。配置文件首先需要建立一个工程,这里我建立一个 spring boot 的工程, 然后我们在框 xml 配置文件中配置编意打包插件 打包好的时候需要上传到眉粉仓库,这里还需要配置仓库地址 palamxm 文件中配置好仓库地址,一个是 releases, 一个是 snapshots 的 maven 仓库,图如下,除了工程里面的配置,还需要到 maven 的配置文件中添加配置 settings dot xml, 我们将打包的这儿上传到的是私服,如果配置文件中配置了代理, 需要将代理注视掉,就上上图中的内容开发功能,一切准备就绪后就可以开发功能了。我们以上图中的 backlax climb 回力,在这个类中 我们封装一个保存代办的功能,实际上就是远程调用远程代办功能,然后封装起来。我们在内中添加了 i conditioner on property, 用于控制时 是否将该类注入到 spring 的容器中。如果我们在业务工程的 property 损件中配置,那么业务类启动的时候会将该类注入到容器中,这样实现按需注入,提高 sdk 的性能。 推送到仓库,运行爱爹的眉粉插件里面的 di 即可将工程打包并发送到眉粉仓库中。进入眉粉仓库发现推送成功,接下来我们就需要在业务系统中调用了。业务系统调用 首先引入我们的眉粉依赖,接着在启动内添加扫描路径,然后配置文件中做需要的配置,配置之后业务系统启动时就能注入相 的累了。最后使用猫头娃儿取出需要的病调用即可,这样这个公共功能在各个系统中都可以引入使用了。到此我们的 sdk 就开发完成了。

什么是 ap i? ap i 是前端调用后端数据的一个通道,就是我们所说的接口,通过这个通道可以访问到后端数据,但是又无需调用免代码,可以帮助工程师快速便捷访问并获取资源,大大提升项目的开发效率。什么是 sd k? sdk 是软件开发的工具包,广义上的是指辅助开发某一类软件的相关文档、案例和工具的集合。使用 sdk 可以提高开发效率,更简单的接入某个功能,比如说一个产品想实现某个功能,可以找到相关的 sdk, 工程师直接接入 sdk 就不用重新开发了。例如美颜 sdk、 人脸识别 sdk 的 apr 与 sdk 的区别。 从本质上说, api 就是数据接口定一种能力,一种接口的规范,而 sdk 相当于开发集成工具环境。更准确的说, sdk 通常包含一个或者多个 api, 程序员会在 sdk 环境下调用 api 数据,但是 sdk 又不完完全全只是包含 api 以及 api 的实现。他是一个软件工具包,还有很多其他辅助性的。想了解更多开发小知识关注我们。


同样一个组建集成任务,第一次我做了两天多,然后第二次我只用了十几分钟。不是说我变厉害了,而是我换了一种完全属于 ai 时代的工作方式。我没有多看书,也没有学习新的框架,甚至没有刻意的去总结经验。 我只是把第一次真实的开发调试过程变成了一个可以一键复用的 skill。 我 先把方法直接亮出来,核心就一句话,一次过程,一个 skill 和两个工具。你正常干活儿, ai 帮你把经验变成可以复用,可以传播,可以直接运行的能力。具体是这样 一个过程,你只需要完整的做完一遍任务。一个 skill 就是 让 c r i 借助 skill creator 自动地去创建可以附用的 skill。 两个工具呢,第一个当然就是 cli 的 编程工具,另外一个就是 get, 用来做代码提交记录的工具。这样做我们不用写文档,也不用总结经验,更不用去封装 sdk。 这并不是我瞎想的,是最近真实的一次工作经历, 我需要给两个 fast api 的 服务,集成 skywalking 的 链路监控,这东西是做性能监测的。 第一个服务,我就老老实实的干查文档,持续的跟 c r y 的 编程助手进行对话,然后去改代码, 其中报错进行调试,反复的去提交, get, 反复去跟这个 c r y 修改代码,经历了很多轮之后,用了整整两天的时间才终于跑通。我突然意识到,这些坑我为什么要再踩一遍呢?我已经把所有的这些修改都提交到了一个独立的 git 分 支里边儿。 那我能不能让 ai 去把这个过程提炼出来,成为一个经验呢。然后我让 cly 拉取整个分支,告诉 ai 以最终的运行代码为准,把整个 skywalking 接入的流程制作成一个可以附用的。几分钟之后,一个 skill 就 出来了。 fast 的 api skywalking tracing。 这是到了第二个服务,我只做了三件事,第一就是把 skill 放入 cly, 然后输入一句话,运行调用这个 skill, 他当然有报错,不把日制丢给 c r y, 改一次,直接跑通,全程十几分钟。那一刻,我突然意识到, ai 带来的不只是效率的提升,而是知识传播的质变。 以前我们想要分享经验,它只有三种方式,第一就是写文档,第二就是写教程,第三也是最难的,就是封装一个 s d k。 这种方式又慢又累,而且很容易被误解。 现在是你做一遍 get, 记录过程,然后 c r y 去提炼 skill, 其他人可以直接赋用,这样你的经验就不再是存在脑子里的感觉, 而是可以运行的真实能力。 ai 时代真正厉害的人,不是比别人干的更快,而是能把自己做过的事变成一种可以无限赋用的资产。只需要一次过程,一个 skill 加上两个工具,这就是 ai 时代最猛的知识复利。
![程序功能:基于Open AI SDK调用大模型的封装类库 程序文件:llm.py
程序主体播报如下:
1、import os
从操作系统模块导入os,用于环境变量访问,确保API密钥安全读取。
2、from openai import OpenAI
引入openai库的核心类OpenAI,用于后续客户端实例化。
3、client = OpenAI(
初始化OpenAI的客户端对象,准备调用兼容的大模型接口。
4、api_key=os.getenv("DASHSCOPE_API_KEY"),
通过os.getenv方法获取环境变量中的DASHSCOPE_API_KEY作为认证密钥,避免硬编码泄露。
5、base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
设置基础URL为阿里云DashScope的兼容模式端点,实现OpenAI SDK与阿里大模型的适配。
6、)
完成客户端配置,确保后续调用指向正确服务。
7、def invoke(user_message, model_name="qwen-plus"):
定义非流式调用函数invoke,默认使用qwen-plus模型,接受用户消息作为输入。
8、completion = client.chat.completions.create(
通过客户端创建聊天完成(即补全)的请求,启动大模型推理过程。
9、model=model_name,
指定使用的模型名称,确保调用正确的预训练模型。
10、messages=[{"role": "user", "content": user_message}]
构建消息列表,仅包含用户角色和内容,实现单轮对话输入。
11、)
结束请求创建,返回完整的响应对象。
12、return completion.choices[0].message.content
提取第一个选择的响应消息内容,作为函数返回值。](https://p3-pc-sign.douyinpic.com/tos-cn-p-0015/osKfGempDIGIQYOgeFkALEofQ62nA6dahCTdnb~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2091420000&x-signature=JeyaEGoIeGAhPSCJ7qyKM0u7DVY%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=20260413143244F90AAD3F2346F9AB874D)
程序功能基于 open ai s d k 调用大模型的封装内裤程序文件 l l m p。 程序主体播报如下, on import o s 从操作系统模块导入 o s 用于环境变量访问,确保 api 密钥安全读 to from open ai import open ai 引入 open ai 库的核心类 open ai 用于后续客户端实力化。三、 client 等于 open ai 初识化 open ai 的 客户端对象, 准备调用兼容的大模型接口。 for api unders 打 g e t e n v dash scope underscore api undersk e y 通过 os git 封方法获取环境变量中的 dash scope 下划线 api key 作为认证密钥,避免硬编码泄露。 five base underscore url equals h t t p s colon slash slash scope dot a l i y u n c s dot com slash compatible dash mode slash v one 设置基础 elo 为阿里云 dash scope 的 兼容模式端点, 实现 open a i s d k 与阿里大模型的适配。六、完成客户端配置,确保后续调用指向正确服务。 seven def invoke user underscore message model underscore name equals qwe on plus 定义非流式调用函数 invoke 默认使用 quinplus 模型,接受用户消息作为输入。 eight completion equals client dot chat dot completion dot create。 通过客户端创建聊天完成即补全的请求,启动大模型推理过程。 nine model equals model underscore name 指定使用的模型名称,确保调用正确的预训练模型。 ten messages equals role user content user underscore message 构建消息列表,仅包含用户角色和内容,实现单轮对话输入。十一结束请求创建返回完整的响应对象。 twelve return completion choices zero message content 提取第一个选择的响应消息内容作为函数返回值。十三、 def invoke with underscore stream underscore log, user underscore message, model underscore name equals q w e n plus 定义流式调用函数 invoke underscore with underscore stream underscore log。 支持实时输出日制默认模型。宽 plus fourteen completion equals client dot chat dot completion dot create。 发起流式聊天,完成请求起,用增量响应模式来记录日记。 fifteen model equals model underscore name 指定模型名称与非流式函数一致,以保持兼容。 sixteen messages equals role user content, user underscore message 构造相同用户消息列表,确保输入格式统一。 seventeen stream equals true 激活流逝传输,允许响应分块返回,以支持实时处理。十八、完成流逝请求出,使化返回可迭代的响应流。十九、 result 等于 初步化空字浮串 result, 用于累积完整响应内容。 twenty four response in completion, 便利响应流中的每个增量块儿,实现实时数据处理。 twenty one result plus equals response choices zero delta content 将当前增量内容的 delta 追加到 result, 实现响应累积。 twenty two print response choices zero data content and equals 实时打印增量内容而不唤醒模拟流逝日制输出。 twenty three return result, 返回累积的完整结果,确保函数输出可用。关于 openai sdk 调用大模型的封装类库功能播报完毕。 hope you enjoy this wonderful moment see you next time。

spectra ai 模型配置指南 step 一, 打开设置,找到左侧菜单。 ai 模型支持 cloud codex、 gemini 等多种 ai 提供者,可拖拽排序和调整优先级。 step 二, cloud 接入适配器,选择 cloud code sdk, 填写名称,设置默认模型,支持国产模型接入,在认证区域填写 andripic api key api 地址,默认即可留空使用 oof 登录。 step 三, codex 对 接适配器,选择 codex app server, 设置默认参数,如 model gpt 四,自动接受参数,填写 openai ip 和 url, 注意 url 虚为 openai 格式。 type 四,第三方模型接入适配器,选择 open ai 兼容 api, 填写 api 地址密钥和模型名称,如 g p t 四 o 最大上下文头肯可自定义。点击测试连接验证配置,通过后点击创建保存,开始你的 ai 编程之旅。

老槐树下的你好,小雨从前呀。呃,你给我说一下你是谁?好的,主人你好,小雨,请告诉你我是谁呀?你退下吧。 主人,我先退下了。我们 ai 模组所有的这些指令啊,我们全部都已经封装好了 sdk 啊,你不需要去一个一个报文去 自己去实现啊,到时候直接用我们封装好的这个 s、 d、 k 的 这些方法,包括这些数据类型啊,都已经封装好了,所以你们使用起来是非常方便的,记得点赞关注哦。


先修一下客户端啊,这客户端第一位,哎呀, 我们先下一个客户端啊,然后那个我们把,我现在这块你们能别唠吧?我们我我们先那个搞一个客户端过来啊,然后这个客户端呢,我把再把那个第一位压下来就可以了。 上次那个被被那个杀毒软件拦截了,我一直没没弄它,然后我刚才看好像是缺缺那个缺缺文件啊,看一下这个客户端就没问题了,因为我刚才那个路径被拦截了啊, 好让它慢慢更新,然后我们把我们的那个原来的 dv 复制过来就可以啊,其他不重要了,新的客户端这个好直接盖啊。 今天这节课呢,我们主要讲还是讲那个 g y 啊,前端的,因为前端的内容要比后端丰富很多,所以后端的东西吧,实在是没有什么好讲的东西了啊, 我们上次呢讲了一个原变量啊,通过这个原变量呢,大家把常用的东西呢,可以进行一定的封装啊。 这里面比较重要的其实就是前端的身份证身份信息,拿到身份信息以后,你可以获取好多信息啊,比如说他的什么血量啊,什么蓝量啊,等级职业这些都可以拿到啊。 然后昨天我们说啊,这个东西其实不光可以拿,同样也可以改,只不过改的是客户端的信息啊,那这里面应该没暴露,因为毕竟改了也没什么用。但是我们确实可以把我们现在当前,比如说我现在在说话,把我们的这个玩家的名字改为叫 gm 啊,那 我们的客户端呢,使用的是 cocos 呢,使用什么 dp 的 那个客户端啊,那么客户端呢?其实你可以把它理解为是一个, 是一个什么呢?是一件外套啊,那比如说我现在有这个九九六后端,那么前端呢?我不喜欢 cocos 啊,我喜欢用那个虚幻引擎做,当然也可以,你只要把前后端的协议打通,那这些都没问题啊, 等它刷刷缓存啊。咱们今天呢,其实就已经要进入到一个正常的这个前端的一个学习啊,前面我们做了一定的介绍, 那么我们会从这个这个地方啊,一步一步的往下讲啊,碰到重要的东西我们就直接给它封起来啊。上次我们讲过 open open, 其实就是打开做了一次 require, 对 吧? 然后创建界面,创建界面呢,是我们通过创建界面,你可以把它理解为创建一个层,创建了一个节点啊,其实它这个呢就相当于创建了一个 场景啊,你可以把它理解为创建了一个场景,并且这个场景呢是在你的最上最上层啊。关闭,关闭时间呢?我就一个一个讲了啊,这个东西不需要演示啊,这个关闭你看有几种,一二三四 五这五,他有五个关闭事件,这五个关关闭事件呢,我们通常会用哪个呢?关闭对象,把见面对象带进去,他就会直接关闭了啊,所以整个的这套东西里面啊,他所需要的这个这个前面其实应该补一个 g u i, 所以 你们在自己写说明书的时候,这个地方把这个 g u i 补进去就可以了。 界面的 id 通过 id 进行关闭,通过 npc 的 id 进行关闭。这个其实用也能用,但是比较少用,我们一般都是抓到这个界面对象以后直接去关闭这个界面就可以了, 所以这个用的还是比较少。然后通过 esc 啊,你键盘,你通过 esc 进行关闭,那么你就把这个东西挂进去啊,啊,关闭所有的窗口界面, ok, 这个是呢,是我们的这个所有的关闭啊, 好,就不一演示了,一会我们一会我们带进去试一下就知道了。获取界面的控件, ok, 我 们来这个啊,从这开始好找一个, 这是后端的啊,我好像点错了,这是后端的啊,前端来一个 vs code。 好,刚才我们新加了文件,所以我们要重新去导入啊。 e v 键这里一个我们的封装,他的 ok 键 进来啊,进来以后我们直接打开 utile 啊, utile 这里 我们所有的加载,初步化的加载我们都会在这边来进行啊,那么包括我们的协议啊,其实我都已经写进来了啊,写到哪里去了呢?写到这,这是我们的网络协议,我网络协议写这了, 这个呢是我顶部按钮,是我顶部按钮,当我每次更新的时候,这个地方会有个顶部按钮,我这里边图片没有啊,所以你看你看不到,他会把顶部按钮全部加载进来啊, 好,然后我们找一个测试的环境,好吧, t i t ok, 还拿它来做一个测试啊,这儿啊,加载 t i t。 加载,有没有看一下更新 t i t。 加载,有了,有了,以后来我们首先呢老规矩,先创建一个场景界面啊, 这是创建场景是吧?这里面有一个可以让我们直接复制的地方,这儿直接复制它就可以了哦, x y 宽高,然后提取,提取一个缓存里面的文件,所以我们按空格这个东西加载进来了啊,那加载进来以后,我们看今天我们要学习的是界面里面 获取界面的控件。 ok, 我 们把这这些全部给它复制过来啊,复制过来,我们把重要的东西呢会进行一个封装啊,带着大家走这些,这里边我封装里面是没有的,可以看一下。 首先创建了一个场景,然后在这个场景里面呢下了一个什么 list, 这个就是列表容器了啊,他下了一个列表容器,挂在谁挂给场景这呢啊?起了一个唯一 id 啊,唯一 id 名字不能冲突, 然后宽高位置大小,然后设定垂直,然后我们把这个打出来看一下啊,好,我同时两个场景来看一下, 好像好像好像,下面这个你也看不出来什么,因为这个场景里面什这个这个列表里面什么都没有啊,什么都没有,所以你也看不到什么。如果这个场景实力存在,那么我们将它创建出来,增加了一个容器,然后在这个容器里面呢挂载了一个按钮啊,它是找了个这么个东西啊,感谢, 那可能,可能是我们这张图片没有啊,所以我们把它直接换一张图片啊,快一点, ctrl f 十一找一张图片按钮进来。 ok, 我 们就用这张图片吧,不适合他过来,来这里呢,千万记着要带 r e s 啊,更新再来 关掉。 ok, 在 这呢啊,这个位置在哪里哦?九百多,四百多,看这了吗?来,我们给他改个位置啊,三百多在这,然后四十和四百五,为什么呢?看这宽度多少啊?咱就往四十再凑啊。好,那么我们宽度给他多宽一点啊?三百八, 因为这个列表容器会给你切割的啊,三百五,够 好,按钮过来了,我们现在目前的层级关系啊,这个你其实你看这个代码你就应该知道了。首先这是负节点,负节点下面有个列表容器,列表容器下面有一个什么,有一个层层下面有个什么,有个按钮,它是几级啊?一级、两级、三级,对吧?它是三级关系啊。 那么我们现在可以有几个方法可以直接去获取,看这个获取的是什么?获取的是我们的列表容器啊。来,我们去把这个列表容器打印出来看一下啊。通过 get windows, get windows 呢?这几个都是 get windows 啊,通过 get windows 获取谁?赋节点是他,那也就是他在找赋节点下面的唯一 id, 对 吗? 查找唯一 id 啊。好,然后我们就直接把它打印出来看一下啊,看看打印出来东西是什么啊? 打印, ok, 更新,那么如果我要的是一个对象,它这个组建的对象是不是应该应该是一个 user data 的 对象啊?

以下是根据微信官方文档整理的定制开发全流程教程。第一阶段,开发前准备与账号注册,在写代码前必须先完成商务与账号流程,否则无法调用接口 注册联盟推客账号前往联盟推客官网使用微信扫码注册。注意,个人通常无法直接使用高级 api, 建议注册企业账号, 完成企业认证,提交营业执照、法人信息、结算银行账户等信息。只有认证通过后,系统才会自动开放接口调用权限, 获取密钥凭证。登录联盟推客管理后台账号设置,获取 app id 和 app secret。 注意, app secret 通常需管理员微信扫码才能查看。 开通小程序商城,确保你有一个已发布的小程序,且开通了微信支付商户号,用于佣金结算。 第二阶段,系统架构设计为了实现红包群和广告联盟分发,推荐采用以下架构,后端服务作为代理服务器,负责调用微信联盟 api 处理回调通知,计算分账。 前端 s、 d、 k 封装在小程序中的组建。负责 ui 展示、点击跳转数据买点数据库设计推广位表、订单关联表、佣金记录表。第三阶段,核心开发流程一、 获取 access token 这是所有接口调用的钥匙,由于有效期通常为两小时,后端需编辑定时任务,自动刷新并缓存 接口。使用 a p、 p 和 secret 换取 access 下划线 token。 注意,严禁在前端小程序直接调用此接口,必须由后端完成。二、 商品管理模块开发为了让红包群里有商品可发,需要实现商品解锁功能, 获取商品列表调用,查询全量商品详情信息。接口支持按关键词价格、佣金比例筛选调用查询联盟精选商品接口,获取官方推荐的高佣金商品,每次最多获取五十个。 获取推广素材,选定商品后,调用获取商品推广素材接口,关键自断,该接口会返回商品的 path。 小 程序跳转路径推广短链商品图片和小程序码。 三、推广位管理核心推广位是记录佣金的依据,例如红包群 a 和红包群 b 应视为不同的推广位, 实现逻辑调用,添加推广位接口,传入群名称,生成唯一的 pid 推广位 id, 在 数据库中记录该 pid 归属于哪个用户或哪个群,支持编辑和删除推广位。注意官方提示,删除后仍可能产生佣金,逻辑上只是取消关联。四、 订单回调与监控这是系统的核心,如何知道用户通过红包买了东西?方案 a, 主动查询推荐,编写定时任务,调用查询订单明细接口, 根据订单支付时间、订单状态,如已支付已完成,拉取数据,将订单与数据库中的 pid 匹配,记录佣金。方案 b, 被动回调 微信联盟支持将订单状态变更推送到你的服务器,需在后台配置回调 url, 实时性更高。第四阶段, sdk 封装与对接为了让你的系统能被其他商家或开发者轻松使用,可以封装成 sdk。 后端 sdk, java php 派放势力封装公共请求方法,自动处理签名和 token, 提供 get goods、 list、 美元 perms、 create promotionplace、 美元 name 等函数。 前端插件。小程序组建开发一个自定义组建接收商品 id 或 path 作为属性,使用 open data 或 navigator 组建实现跳转关键点,在跳转 url 上必须拼接 pid 参数,否则无法跟踪佣金。 第五阶段,定制化扩展建议红包群裂变逻辑,开发一套抢红包助力逻辑,用户需转发小程序海报,到群助力成功后才发放红包。 注意,微信对于诱导分享打击严厉,红包金额需合理,且必须有真实购物场景作为支撑,不要做纯现金裂变二级分销,微信联盟官方不支持二级分销, 如果你想做下线发展上线,需要在你自己系统内部记录上下级关系,但微信联盟只结算一级佣金给你,你需要自己将从联盟赚取的佣金再分配一部分给下级 数据。看版为群主开发独立后台,实时查看我的群产生的预估佣金点击率、下单转化率。总结,开发路线图 注册认证获取权限大于二后端搭建获取偷看商品 api 大 于三 推广位系统生成 pid 大 于四,小程序改造跳转携带 pid 大 于五,订单同步定时拉取订单结算大于六。 提现,系统用户申请提现佣金重要合规提示,微信小程序联盟严禁纯垃圾广告轰炸,确保你的红包群是有真实用户基础的购物分享群,避免被用户投诉导致小程序封禁。

ok, 欢迎回来,不知道大家的龙虾养得怎么样了?很多人养龙虾烧黑粉非常的严重,为此呢,我也是非常的害怕, 那今天这期视频呢,我主要介绍如何将扣子的大模型节点通过 api 分 装后,作为第三方的大模型提供给 opencloud 使用。在这个过程中呢,我们也会学习到如何去 是配第三方的大模型,那为什么要这样做呢?也是在思考本地部署的时候,突发奇想,发现自己的扣子平台还有十几万的积分没有消耗掉, 所以想试一下能不能先用这些资源来培养一段时间小龙虾。因为在龙虾成长到能真正干活的阶段呢,我们需要不断频繁的和龙虾对话,这个时候呢,他也会去安装很多的工具,甚至自己去开发一些技能, 说白了就是在验证和试错中反复的进行,因此我们的 token 就 会被疯狂的消耗,所以这期呢,我们就用扣子的积分 来给龙虾练手。 ok, 如果大家也有扣子积分用不完,或者说有类似的平台,可以按照我的操作步骤看能不能接进来。 ok, 跟大家看一下,这是我最终的一个效果啊,我弄了一个小红书的插件,然后让他去搜索这种情感励志类的自媒体的这种选择题, 然后他现在就是有一些回复,也记住了我告诉他的一些内容。那这个机器人呢,现在用的模型呢,就是我自定义的模型,可以给大家看一下啊,这个呢就是我现在配置的所有模型,我们用它这个内置的指令, 他会告诉我们有几个提供商,每个提供商提供了什么模型?然后呢,我直接通过对话让他返回了当前用的是豆包的 seed 四二点零啊,整个这个配置和我们之前在追思里面看的是一样的。 首先呢,我们先来到扣子编程的这个网站啊,因为传统的扣子工作流是做不了这个事情的,就是在扣子编程这个网站,我们才能调用它的 s, d, k 甚至原始的 api 去做,这里呢,我们就选择工作流,因为这个是效率最高,最简单的,直接告诉他我们要做一个什么样的东西。 那 open class 实际上是支持 open ai api 规格的,这是目前用的最广泛的一个接口规格,所以我们就用兼容 open ai api 规格的方式来去做这个工作流的输入和输出, 告诉他我们需要创建一个只有输入输出的工作流,暴露 l l m 盗工网不合 oppo ai 的 api 接口规范,然后再规范一下它的输入和输出,就直接交给扣子编程去做开发,当时我也只是去尝试一下,然后它开发完以后呢, 实际上这个工作流就非常简单,就有一个输入,然后做一个大冒险的调用,最终格式化输出,全程呢没有额外的东西。接着呢,我让他自己创建了一个他这个项目的 a p i 接口调用说明,然后我拿着这个 a p i 接口调用说明,直接告诉我们去里面的 ai agent, 然后让他去测试一下是否真的符合 和这个 open ai ipi 的 规范。第一轮测试呢,实际上还是有一些问题的,接下来呢,我们就针对测试的问题呢,做了多轮的对话,目的就是让它最终变成一个完全符合 open ai ipi 规格的接口。 那这里呢?我们最终发布出来的产物呢?和之前我在另一个系列里面讲的用扣子去做发票识别是一样的,它会给到一个网站,这个网址实际上是不符合 o p i a p i 的 接口的,但是我们可以通过在代码里面 做一些兼容性的处理,让我们能够支持在后面添加 o p i a p i 请求规范的这种格式。然后我就和它又进行了很多轮的打磨, 这个打磨的过程也非常简单,就是让翠去测试接口,然后生成一个测试报告,然后再把测试报告给到这个扣子编程的 ai, 让他去读取报告,针对性的去修复啊。如果说两边有疑问,我们就做双方的一个传话筒,把这个信息拉齐就可以了。 最终可以看到我们做了大概五到六轮以后呢, tree 给出的一个报告,就是这些全部都通过了,那接下来我们就可以将它适配到我们的 open cloud 上面去。 具体的适配方法呢?实际上是有两种啊,一种就是在我们的 open cloud 工作目录下面有一个 open cloud 点 json, 我 们 直接在这里去写,我们直接可以参考原来的这个 provider, 里面添加我们第三方的提供商,这里就是我配置的第三方节点,可以直接照搬上面。那配置完以后,我们保存后呢就重启 opencloud, 那 重启完以后呢,我们就可以在网关这里看到这些配置。 那还有一种方式呢,就是我们通过这个 opencloud 的 on board 这个命令,这 里和我们之前配置是一样的,我们就选 quickstart, 这里之前配置过,所以我们就还是保持现有的,不要去垫。 然后在这里添加模型的时候呢,我们选 custom provider, 在 部署之后,这里会给到一个执行工作流的网址,我们将这个网址粘贴上去,加上我们的 v e 接口的后缀,因为这个是符合 open ip 标准必须要有的。 然后接下来是去粘贴我们的 api k, 这里有一个 api token, 然后选择创建 api token 后复制就可以了。这里呢我们就粘贴这个 api k, 然后回车。以后呢,我们就选择这个 open i 兼容的模式,这里它会要求你去 去写一个 model id, 那 因为我之前已经配过豆包 g i m 还有 kimi, 这里我以 deepsea 为例,这里我后来让它加了支持 deepsea 微三的模型,所以这里我就可以复制这个模型的 id, 然后粘贴到上面。 接下来呢他会做一个验证,这里可以看到我们已经验证成功了,那我们还是把这个跑外的固定,就是这个默认的名字就不改了,或者说我们可以改成任何的名字,这里呢我们就给他一个别名, 注意这里的名字呢就不能带空格啊,然后其他的我们就挑过就好了,因为我们不配置这些。 配置完以后呢,我们可以重新在终端里面看一下,然后我们就可以在这里看到 deepsea, 因为我们现在已经把模型切换成了 deepsea, 我 们现在在飞书上面试一下,我们直接问他现在用的什么模型。 ok, 我 们现在可以看到我们已经 就改为了 deepsea v 三二这个模型哦, nice, ok, 本期内容呢,我们就全部结束了。这期呢,我们成功把扣子的大模型节点分装成了一个可供调用的 l l m a p i, 让 open cloud 可以 直接去使用。这样呢,将我闲置的扣子积分全部利用了起来, 能够低成本的开始前期养龙虾和安心调教以及试错。那下一期呢,我们会进入到一个更加硬核的环节, 因为第一期呢,我们是使用原码去编辑和安装小龙虾的,所以我们可以基于原码去做二次开发以及定制。相信大家在第一期和这期能够看到,其实我也在用 tree 协助我去调试 open cloud, 那 么下期我们就详细介绍如何通过原码结合 ai agent 去养小龙虾。那下期我们会用 tree 以 webc 顶的方式让 tree 的 ai agent 协助我们去 去完善小龙虾的安全机制。如果大家对这期内容以及我接下来玩 ai 这样的方式感兴趣的话,欢迎一键三连并且点个关注。 ok, 我 们下期见。
