跳到正文
抓蛙师视频库

开源一套所有语言通用的 AI 模型接入规范:25 家对话 + 17 条多模态预置,Rust 直接用,Java、Python 照规范接

发布于 时长 10:03 751 次播放 (截至 2026-09-27)
AI 编程与工作流 #AI模型配置层

点赞、投币、收藏和评论只能在 B 站上完成。

视频简介

做 AI 应用,接模型厂商这一步谁都绕不开。只做一个应用还好,一家家接、一家家测; 应用一多就麻烦了:A 应用里改了某家的模型列表,B、C 还得各改一遍;换个语言,又得从头适配。 更糟的是每个应用让 AI 各写一版,写法不统一,经常 A 里能调通、B 里就报错。

所以我把这一层单独抽出来开源了:ai-profile,AI 模型服务配置层。 它首先是一套所有语言通用的规范:预置数据是一份 JSON,地址拼接、错误判定、模型清洗等是一组规则用例。 不管用 Rust、Java、Python、JS、PHP 还是 C++,拿同一份数据、照同一套用例实现,用例全部跑通,行为就和官方版一致。 Rust 有现成的官方 crate,直接引入就能用;多个应用共用一份预置,厂商或模型有变化,升一下依赖版本就全部同步。

它提供什么: ▶ 对话 25 家 + 多模态 17 条预置:地址、模型 id、协议、专有字段、密钥申请页全部内置,按厂商聚合,同一家的多种能力共用一个密钥 ▶ ai.profile 跨应用互通:A 应用配好的模型服务,复制一段 JSON 就能粘进 B 应用 ▶ 零成本验证:「获取模型」只打模型列表接口,不产生生成费用;失败分七种错误,各对应一个界面动作 ▶ 地址规则确定、不靠猜:各家 OpenAI 兼容地址的版本段原样使用 ▶ 限额与历史裁剪:上下文窗口、输出上限逐字段取值,服务端报超长时自动裁剪重试 ▶ 生图 / 视频 / 配音调用 ▶ 默认零重依赖:只有 serde、serde_json、thiserror,纯数据 + 纯函数,能编到移动端

界面由各应用自己做,ai-profile 只管厂商预置、请求规则这些「后端」部分;密钥存储、数据库、流式解析也不在库里。

用 AI 接入(Claude Code / Codex / Cursor 都行),三种方式任选: ① 贴一段提示词 ② 把接入技能放进项目 ③ 只给文档地址,再跟 AI 说需求 这个库 2026 年 9 月才发布,AI 的训练数据里没有它,所以官网专门准备了接入规则和全文文档给 AI 读。

其他语言怎么接:官网「其他语言实现」页给了预置数据、规则用例和一段现成的提示词, 把提示词连同用例交给 AI,让它照着写、跑测试、哪条红改哪条,直到全绿。 (目前官方维护的实现只有 Rust 版,其他语言按这套规范自己实现。)

视频最后演示了两个已经接入的软件:Sigil 和 Reeve,设置里的「模型服务」用的都是同一份配置层。

官网:https://ai-profile.ruoyi.plus GitHub:https://github.com/bkywksj/ai-profile(MIT 开源,欢迎 Star) crates.io:https://crates.io/crates/ai-profile

00:00 为什么需要一个模型服务配置层 01:12 ai-profile 是什么:一份预置、一个协议、一套验证 01:36 规范与语言无关 02:24 对话 25 家 + 多模态 17 条预置 02:36 30 秒上手:Rust 调用方式 03:24 API 文档:服务商目录、配置连接、多模态调用 03:36 用 AI 接入 04:00 方式一:贴一段提示词 04:24 方式二:把接入技能放进项目 05:00 方式三:只给文档地址 05:24 其他语言实现:JSON 预置 + 规则用例 06:36 用 AI 按用例实现其他语言版本 07:24 GitHub 开源仓库与 crates.io 08:00 实际案例:Sigil 的模型服务 09:24 实际案例:Reeve 的模型服务 09:48 总结