BibiGPT’s API is currently in beta. If you have any questions or feedback, please reach out to us at jimmylv@mofa.si.

BibiGPT 开放 API (beta)

一、获取专属 API 链接

All API endpoints are authenticated using apiToken tokens and picked up from the endpoint directly.

https://bibigpt.co/api/open/{apiToken}

请在登录后,查看 https://bibigpt.co/user/integration 页面,获取专属 API 链接🔗

二、API 调用方法

总结 /api/open/[apiToken]

(支持 GETPOST 两种请求方式,POST 方法能够设置 promptConfig 调整总结结果,同时支持 includeDetail 返回音视频内容详情)

GET 请求示例

POST 请求示例

问答 /api/open/[apiToken]/chat

interface ChatContentParams {
  url: string
  question: string
  # tuple for each [['Q1', 'A1'], ['Q2', 'A2']]
  history?: [string, string][]
  language?: string
}

除了 answer 以外,还可以设置 includeDetail 参数,选择是否返回跟答案有关的 sourceDocuments

如果需要连续提问的话,记得把上一次的 QA 问题和答案作为 history 上下文,从而提高下一次回答的准确性和连贯度(当然,这样所消耗的 token 时长也会加倍)

字幕 /api/open/[apiToken]/subtitle

相比于总结接口,由于少了请求 LLM 的时间,所以会快很多。

注意:默认情况下,会自动检测音频语言,从而产出对应的中文或英文字幕。但有时候自动检测可能失效(或由于缓存),如果发现字幕与音频语言不一致时,您可以手动指定 audioLanguage 参数。

https://bibigpt.co/api/open/{{apiToken}}/subtitle?url=https://www.youtube.com/watch?v=z5U843Ob8xw&audioLanguage=en

关于「音频语言」的对应关系为:

{
  "Auto": "auto",
  "English": "en",
  "中文": "zh",
  "日本語": "ja",
  "Italiano": "it",
  "Deutsch": "de",
  "Español": "es",
  "Français": "fr",
  "Nederlands": "nl",
  "한국어": "ko",
  "ភាសាខ្មែរ": "km",
  "हिंदी": "hi",
  "ภาษาไทย": "th"
}

文件 /api/open/[apiToken]

BibiGPT API 支持自定义的音视频文件地址,给 API 一个文件下载链接就好。如果是本地文件,可以先上传到 OSS,记得确认下载链接可直接访问。

比如以下的 https://a.jimmylv.cn/assets/music.mp3 (注意URL 路径以 .mp3 结尾)

💡 目前支持的类型包括 mp3|mp4|m4a|m4s|wav|webm|mpga|aac|ogg|oga|flac|alac|wma|avi|mkv|mov|flv|3gp|mpeg|ts|ogv|vob ,如果发现有还不支持的格式可以联系我!

AI 文案改写 /api/open/[apiToken]/express

💡 受限于长文本上下文,Coming soon. BibiGPT.co 网页版可先行体验效果。

AI 脚本修正 /api/open/[apiToken]/polish

💡 受限于长文本上下文,Coming soon. BibiGPT.co 网页版可先行体验效果。

三、API 接口参数(目前仅支持「总结」API)

3.1 可选配置参数 promptConfig

1、promptConfig 只支持 POST 请求,作为 body 参数

2、promptConfig 不填时的默认参数,可根据需求自行修改

{
  "showEmoji": true,
  "showTimestamp": false,
  "outlineLevel": 1,
  "sentenceNumber": 5,
  "detailLevel": 700,
  "outputLanguage": "zh-CN"
}

注意: detailLevel 对应「句子长短」,对应关系为 50,即 700/50=14(Web页面显示的数值)

另外, 关于「输出语言」的对应关系为:

{
  English: 'en-US',
  中文: 'zh-CN',
  繁體中文: 'zh-TW',
  日本語: 'ja-JP',
  Italiano: 'it-IT',
  Deutsch: 'de-DE',
  Español: 'es-ES',
  Français: 'fr-FR',
  Nederlands: 'nl-NL',
  한국어: 'ko-KR',
  ភាសាខ្មែរ: 'km-KH',
  हिंदी: 'hi-IN',
}

3、promptConfig 中有一个特殊参数: isRefresh ,当它有值并为 true 时,才会忽略缓存

举例,这是一个「不输出emoji表情符号,显示时间戳,大纲层级为2,句子个数为3,句子长短为10,输出语言为英文,且强行刷新缓存」的promptConfig:

{
  "showEmoji": false,
  "showTimestamp": true,
  "outlineLevel": 2,
  "sentenceNumber": 3,
  "detailLevel": 500,
  "outputLanguage": "en-US",
  "isRefresh": true
}

3.2 自定义总结

{
  "url": "https://www.bilibili.com/video/BV1Aj411a7HN",
  "promptConfig": {
    "customPrompt": "总结为3个笑点",
    "isRefresh": true
  }
}

在 promptConfig 当中添加 customPrompt 可以定制自己的总结提示词。需要注意的是,如果视频被总结过,那么需要 isRefresh: true 跳过缓存的结果,customPrompt 自定义总结才会生效。

3.3 limitation 限制条件

作为 API 的 limitation 字段可以设置 maxDuration 最大时长,然后如果后台检测 url 所对应的音视频时长超过了maxDuration ,就返回 422 error 错误状态码

{
  "url": "https://www.bilibili.com/video/BV1Sk4y1x7r2",
  "includeDetail": true,
  "limitation": {
    "maxDuration": 600
  }
}

四、使用案例

4.1 百度搜索

4.2 微信助理

ChatGPT AI助力音视频一键总结,成功链接维客创云啦!

https://github.com/zhayujie/chatgpt-on-wechat/issues/1417

【看吗?买吗?】今天的苹果发布会相关视频多到爆炸,又无聊。_哔哩哔哩_bilibili

4.3 移动端 iOS 快捷指令

【AI 视频笔记】BibiGPT 开放API & IFTTT 无限想象力

【AI 视频笔记】苹果备忘录:一键总结 B 站视频,联动快捷指令丨BibiGPT 开放API & IFTTT 无限想象力_哔哩哔哩_bilibili

4.4 浏览器插件

【BibiGPT】浏览器插件:支持任意网页音视频内容的一键转录 & 总结_哔哩哔哩_bilibili

4.5 联动笔记软件

语音输入 → Roam Research → AI 改写 → AI 回顾

通过 telegroam 发送语音,然后用BibiGPT的API总结成文本,一键保存到Roam Research


详细文档(完善中):https://docs.bibigpt.co/api-reference