[coze]将CozeApi转换为OpenAi的Api使用

特别感谢@wren @CN_Free 还有其他一些大佬。

先上效果图

说明

这里只是给仓库增加了docker支持,修改了一下readme,未做其他修改。如果需要查看coze创建过程的,可以参考

仓库地址:

原仓库地址:

使用说明

  1. 仓库克隆到本地
  2. 修改.env环境变量 主要修改BOT_ID和COZE_API_BASE,COM是国际版收费,CN免费,有额度限制,自己选择。
  3. 构建本地镜像
cd coze2openai
docker build -t coze2openai .
  1. 启动容器
docker run -d -p 3000:3000   -v "$PWD/.env:/app/.env"   coze2openai 
  1. 浏览器访问http://localhost:3000 提示如下信息即表示正常
Coze2OpenAI
Congratulations! Your project has been successfully deployed.

用法

  1. 代码里直接调用
const response = await fetch('http://localhost:3000/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_COZE_API_KEY',
  },
  body: JSON.stringify({
    model: 'model_name',
    messages: [
      { role: 'system', content: 'You are a helpful assistant.' },
      { role: 'user', content: 'Hello, how are you?' },
    ],
  }),
});

const data = await response.json();
console.log(data);
  1. shell调用
curl --location 'http://localhost:3000/v1/chat/completions' --header 'Content-Type: application/json' --header 'Authorization: Bearer pat_key' --data '{
     "model": "gpt-4",
     "messages": [{"role": "user", "content": "你好!"}],
     "stream": false
   }'
  1. 增加到new_api等

渠道选择自定义渠道
base url填写http://localhost:3000/v1/chat/completions
分组随意,因为实际是通过.env控制的

调用测试

curl --location 'http://localhost:9301/v1/chat/completions' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-B8scKkvhaUKwVEXo09C2B23dF1Ed4f688243F2Df8f26F7B8' --data '{
     "model": "gpt-4",
     "messages": [{"role": "user", "content": "你好!"}],
     "stream": false
   }'

相关链接

其他说明

这里可否打个小广告 ,先在自己的小博客发了一下,嘿嘿

发一下自己的小博客链接地址,谢谢各位大佬。有需要加友链的留言

9 个赞

oneapi 直接调用扣子不好吗?

牛的佬

感谢

oneapi 只有amd镜像 我本地不知道咋搞 就跑的newapi 只是为了加个docker 方便自己使用 说实话 我是小白 没太搞懂newapi的操作 用docker 跑这个极简化的使用coze到已有的openai客户端上

1 个赞

coze 用起来像是阉割后的gpt4,不过还是感谢楼主提供资源

对于没有GPT4 并且想稳定一些的 其实推荐国内的通义千问或者coze 感觉也差不多够用吧

好像没有package-lock.json文件啊

从当前 Docker 客户端位置COPY package.json 和 package-lock.json
COPY package.json package-lock.json ./

好啦 已经修复了 多谢提醒

重新拉取一下代码 执行吧

阿里云99 是新用户?现在还有吗

oneapi 可以直接用 coze ? 但后面的模型得付费吧?

佬,为啥curl测试报错:{“error”:“Unexpected response from Coze API.”}

好像听说修改版的oneapi支持coze 在论坛里记得看到了

把那个url base修改成cn

佬 已经改了 还是不行


这是我的配置

我config 没动 不知道有没有影响 你在coze上可以正常测试吗

大佬,如果,自己把.env文件改了,是不是还要重新的,执行:docker run -d -p 3000:3000 -v “$PWD/.env:/app/.env” coze 这个命令呢?

1 个赞

需要的 在启动的时候加载的

以下内容为ai回复内容:

当你使用 dotenv 或类似的模块加载环境变量时,它们通常在应用程序启动时读取 .env 文件或环境变量,并将其设置为应用程序的运行时环境。

如果在应用程序运行期间修改了环境变量,应用程序可能不会自动检测到这些更改。因此,为了使修改后的环境变量生效,你需要重新启动应用程序,以便它可以重新读取环境变量并应用更改。
2 个赞

可食用,不过这样过来好像有点慢。

1 个赞