chatbox icon indicating copy to clipboard operation
chatbox copied to clipboard

Azure AI Foundry生成的DeepSeek-R1 API该如何在chatbox使用

Open nonsensejoke opened this issue 10 months ago • 21 comments

-Azure Endpoint 我填的是 https://ai-ABCABCABC.openai.azure.com/openai/deployments/[deploy名称]/completions?api-version=2024-05-01-preview -Azure Deployment Name

这两个分别应该填什么呢?尝试了很多次都不行

测试版本chatbox v1.9.8

谢谢

nonsensejoke avatar Feb 08 '25 02:02 nonsensejoke

我也遇到了同样的问题 密钥保证不会复制错误, 模型名字为DeepSeek-R1

Image

终结点使用了各种格式: 如下: 首先是直接复制的终结点 https://ABCABCABCABCABC.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview 其次是聊天操场中代码部署,curl链接 https://ABCABCABCABCABC.openai.azure.com/openai/deployments/DeepSeek-R1/chat/completions?api-version=2024-02-15-preview 以及将DeepSeek-R1换为models https://ABCABCABCABCABC.openai.azure.com/openai/deployments/models/chat/completions?api-version=2024-02-15-preview

以及复制的其他格式: https://ABCABCABCABCABC.openai.azure.com/ https://ABCABCABCABCABC.services.ai.azure.com/models/chat/completions#

始终链接不上 报401或者503错误。

可以确定是在Chatbox中我没有配置正确导致的,因为在别的客户端中我尝试了可以正常连接。

BaseBlank avatar Feb 08 '25 02:02 BaseBlank

目前Azure AI Foundry中serverless类型的deepseek-r1可以通过 chatbox的 openai-compatible API 方式使用

  • API host: https://DeepSeek-R1-xxxxx.eastus2.models.ai.azure.com/v1
  • API Path: /chat/completions
  • Model: DeepSeek-R1

可以使用,但是输出速率比较慢

nonsensejoke avatar Feb 08 '25 04:02 nonsensejoke

感谢楼主的回复,能麻烦请问下楼主,API host: https://deepseek-r1-xxxxx.eastus2.models.ai.azure.com/v1这个链接是在Azure AI Foundry中哪里获取的吗?我看了模型+终结点,以及聊天操场中的curl、python代码等都没找到这个格式的API host,我看这个格式还有部署地区eastus2的参数。

Image

:rocket::rocket::rocket:

BaseBlank avatar Feb 08 '25 04:02 BaseBlank

感谢楼主的回复,能麻烦请问下楼主,API host: https://deepseek-r1-xxxxx.eastus2.models.ai.azure.com/v1这个链接是在Azure AI Foundry中哪里获取的吗?我看了模型+终结点,以及聊天操场中的curl、python代码等都没找到这个格式的API host,我看这个格式还有部署地区eastus2的参数。

Image

🚀🚀🚀

需要部署 无服务器(serverless)类型的

nonsensejoke avatar Feb 08 '25 04:02 nonsensejoke

通过在 playground 中查看网络请求可以看到:

curl 'https://XXXXXX.openai.azure.com/models/chat/completions?api-version=2024-05-01-preview' -X POST \
-H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:134.0) Gecko/20100101 Firefox/134.0' \
-H 'Accept: */*' \
-H 'Accept-Language: en-US,en;q=0.5' \
-H 'Accept-Encoding: gzip, deflate, br, zstd' \
-H 'Content-Type: application/json' \
-H 'x-ms-useragent: AzureOpenAI.Studio/ai.azure.com' \
-H 'api-key: XXXXXXXXXXXXXXXXXXXXXXX' \
-H 'Request-Id: |XXX.XXXX' \
-H 'traceparent: 00-XXX-XXXX-01' \
-H 'x-ms-client-request-id: XXXX-5101-4483-b6d9-XXXX' \
-H 'Origin: https://ai.azure.com' -H 'DNT: 1' -H 'Sec-GPC: 1' \
-H 'Connection: keep-alive' \
-H 'Referer: https://ai.azure.com/' \
-H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-site' \
-H 'Priority: u=0' \
-H 'TE: trailers' \
--data-raw '{"model":"deepseek-r1","stream":true,"messages":[{"role":"system","content":"You are an AI assistant that helps people find information."},{"role":"user","content":"hi"}],"temperature":0.7,"top_p":0.95,"frequency_penalty":0,"presence_penalty":0,"max_tokens":800,"stop":null}'

这里请求的URL和Azure的OpenAI API并不兼容。 我直接通过Python的OpenAI的SDK 中的AzureOpenAI接口也调不通

ttxs69 avatar Feb 08 '25 13:02 ttxs69

看起来 Chatbox 不支持 Azure AI 的验证方法。在 header 中需要把 apikey 赋值给 “api-key”,但是 Chatbox 是赋值给 authorization。比如 authorization: Bearer psuedokey1234567890abcdefg,导致返回401

palfans avatar Feb 08 '25 16:02 palfans

看起来 Chatbox 不支持 Azure AI 的验证方法。在 header 中需要把 apikey 赋值给 “api-key”,但是 Chatbox 是赋值给 authorization。比如 authorization: Bearer psuedokey1234567890abcdefg,导致返回401

Chatbox 有一个模型名叫 Azure OpenAI,可以把 apikey 配置到 “api-key”,应该使用这个接口。

palfans avatar Feb 08 '25 17:02 palfans

看起来 Chatbox 不支持 Azure AI 的验证方法。在 header 中需要把 apikey 赋值给 “api-key”,但是 Chatbox 是赋值给 authorization。比如 authorization: Bearer psuedokey1234567890abcdefg,导致返回401

Chatbox 有一个模型名叫 Azure OpenAI,可以把 apikey 配置到 “api-key”,应该使用这个接口。

测试了一下,不支持 Azure AI 部署的模型,只能用 OpenAI 兼容的那种模型。

palfans avatar Feb 08 '25 17:02 palfans

感谢楼主的回复,能麻烦请问下楼主,API host: https://deepseek-r1-xxxxx.eastus2.models.ai.azure.com/v1这个链接是在Azure AI Foundry中哪里获取的吗?我看了模型+终结点,以及聊天操场中的curl、python代码等都没找到这个格式的API host,我看这个格式还有部署地区eastus2的参数。 Image 🚀🚀🚀

需要部署 无服务器(serverless)类型的

怎麼部署 无服务器(serverless)类型 找了很久都找不到 會一直部署成 Azure ai服務

amberchiuchiu avatar Feb 08 '25 19:02 amberchiuchiu

感谢楼主的回复,能麻烦请问下楼主,API host: https://deepseek-r1-xxxxx.eastus2.models.ai.azure.com/v1这个链接是在Azure AI Foundry中哪里获取的吗?我看了模型+终结点,以及聊天操场中的curl、python代码等都没找到这个格式的API host,我看这个格式还有部署地区eastus2的参数。 Image 🚀🚀🚀

需要部署 无服务器(serverless)类型的

怎麼部署 无服务器(serverless)类型 找了很久都找不到 會一直部署成 Azure ai服務

如图:

Image

Image

AndyX-Net avatar Feb 09 '25 19:02 AndyX-Net

感谢楼主的回复,能麻烦请问下楼主,API host: https://deepseek-r1-xxxxx.eastus2.models.ai.azure.com/v1这个链接是在Azure AI Foundry中哪里获取的吗?我看了模型+终结点,以及聊天操场中的curl、python代码等都没找到这个格式的API host,我看这个格式还有部署地区eastus2的参数。 Image 🚀🚀🚀

需要部署 无服务器(serverless)类型的

怎麼部署 无服务器(serverless)类型 找了很久都找不到 會一直部署成 Azure ai服務

如图:

Image

Image

你好,感谢回复,我在【模型+终结点】页面找到的uri地址是 services.ai.azure.com 的格式,并且我在部署模型的页面没有找到其他可选项,请问如何部署成您提供的截图中 models.ai.azure.com 这种服务?我现在使用的uri还是报404错误。谢谢

Image

Hydway avatar Feb 10 '25 09:02 Hydway

看起来 Chatbox 不支持 Azure AI 的验证方法。在 header 中需要把 apikey 赋值给 “api-key”,但是 Chatbox 是赋值给 authorization。比如 authorization: Bearer psuedokey1234567890abcdefg,导致返回401

Chatbox 有一个模型名叫 Azure OpenAI,可以把 apikey 配置到 “api-key”,应该使用这个接口。

测试了一下,不支持 Azure AI 部署的模型,只能用 OpenAI 兼容的那种模型。

请问 OpenAI 兼容的方式应该如何部署呢?谢谢

Hydway avatar Feb 10 '25 09:02 Hydway

看起来 Chatbox 不支持 Azure AI 的验证方法。在 header 中需要把 apikey 赋值给 “api-key”,但是 Chatbox 是赋值给 authorization。比如 authorization: Bearer psuedokey1234567890abcdefg,导致返回401

Chatbox 有一个模型名叫 Azure OpenAI,可以把 apikey 配置到 “api-key”,应该使用这个接口。

测试了一下,不支持 Azure AI 部署的模型,只能用 OpenAI 兼容的那种模型。

请问 OpenAI 兼容的方式应该如何部署呢?谢谢

就是 serverless 那个部署方式。但是 Azure 实在是太复杂了,我也根本没搞懂应该如何指定。反正第一次创建 DeepSeek 是 serverless,但吐字速度非常慢。后来再部署就变成 Azure AI。

palfans avatar Feb 10 '25 14:02 palfans

似乎可以通过这篇文章里key-less authentication的部分申请azure的bearer api key来使用 但是这个api key似乎会过期

也许可以自己改一个azure api交一个pr上去 不过看起来好像没人维护

AI1379 avatar Feb 11 '25 02:02 AI1379

似乎可以通过这篇文章里key-less authentication的部分申请azure的bearer api key来使用 但是这个api key似乎会过期

也许可以自己改一个azure api交一个pr上去 不过看起来好像没人维护

感谢帮助!我目前改用了together.ai的serverless服务,可以在chatbox里流畅使用

Hydway avatar Feb 11 '25 02:02 Hydway

似乎可以通过这篇文章里key-less authentication的部分申请azure的bearer api key来使用 但是这个api key似乎会过期 也许可以自己改一个azure api交一个pr上去 不过看起来好像没人维护

感谢帮助!我目前改用了together.ai的serverless服务,可以在chatbox里流畅使用

请用具体怎么操作的?

ZDM-JEAN avatar Feb 12 '25 23:02 ZDM-JEAN

前两天用GO快速地写了一个转发然后打包成Docker镜像了。 https://hub.docker.com/repository/docker/justjerry/azure-ai-proxy/general 如果有Azure订阅可以拉取镜像创建一个Azure Container Apps来做转发,这样就兼容OpenAI API的格式了。 当然,其他能host Container的云服务都可以。但是注意纯转发,没有做任何安全验证,别暴露自己的domain被薅了导致经济损失。

Image

Jer-y avatar Feb 13 '25 02:02 Jer-y

前两天用GO快速地写了一个转发然后打包成Docker镜像了。 https://hub.docker.com/repository/docker/justjerry/azure-ai-proxy/general 如果有Azure订阅可以拉取镜像创建一个Azure Container Apps来做转发,这样就兼容OpenAI API的格式了。 当然,其他能host Container的云服务都可以。但是注意纯转发,没有做任何安全验证,别暴露自己的domain被薅了导致经济损失。

Image

大佬,镜像跑起来之后chatbox怎么填啊

HpuPlayer avatar Feb 13 '25 06:02 HpuPlayer

Image

成功配置了 1、要有无服务器的DeepSeek R1(即serverless类型),具体怎么来的我也不知道,第一次部署是无服务器,再部署就是Azure AI服务 2、 点击获取终结点,会有终结点URL和密钥 这个链接是 https://***.models.ai.azure.com 格式的 3、模型提供方选择:自定义提供方,API域名和密钥直接粘贴进去,API路径填:/v1/chat/completions,模型填:DeepSeek-R1

缺点:速度会慢很多

bancog52 avatar Feb 17 '25 04:02 bancog52

serverless

部署一个新的project就又能serverless了

Peregrinek avatar Mar 02 '25 13:03 Peregrinek

要在另一个项目中部署才能又得到serverless了。 官方文档原话: 部署为无服务器 API 终端节点的模型的成本和配额注意事项 配额按部署进行管理。每个部署的速率限制为每分钟 200000 个令牌和每分钟 1000 个 API 请求。但是,我们目前限制每个项目每个模型部署一次。如果当前速率限制不足以满足你的方案,请联系 Microsoft Azure 支持部门。(https://learn.microsoft.com/zh-cn/azure/ai-foundry/how-to/deploy-models-serverless?tabs=azure-ai-studio)

ZDM-JEAN avatar Mar 03 '25 07:03 ZDM-JEAN

-Azure Endpoint 我填的是 https://ai-ABCABCABC.openai.azure.com/openai/deployments/[deploy名称]/completions?api-version=2024-05-01-preview -Azure Deployment Name

这两个分别应该填什么呢?尝试了很多次都不行

测试版本chatbox v1.9.8

谢谢

我写邮件给开发组反馈了,开发组回信说会发布修复。现在修复已经发布,但是还是用不了。Cherry Studio里这样设置可以生效,但Chatbox目前1.10.5更新后的版本还是报错。

Successful Configuration Example (from Cherry Studio) The following configuration works in Cherry Studio: API Key: xxxxxxxx API Endpoint: https://myapiaddress.services.ai.azure.com/models/chat/completions# API Version: 2024-05-01-preview

Chatbox中尝试:

_API Key: xxxxxxxx

API Endpoint: https://myapiaddress.services.ai.azure.com/models/chat/completions# API Endpoint: https://myapiaddress.services.ai.azure.com/models/chat/completions API Endpoint: https://myapiaddress.services.ai.azure.com/models/chat/ API Endpoint: https://myapiaddress.services.ai.azure.com/models/chat ... API Endpoint: https://myapiaddress.services.ai.azure.com/ API Endpoint: https://myapiaddress.services.ai.azure.com

API Version: 2024-05-01-preview

Model Deployment Name: deepseek-r1-20250217_

上述都会报错: API Error: Status Code 400, {"error":{"code":"unknown_model","message":"Unknown model: deepseek-r1-20250217","details":"Unknown model: deepseek-r1-20250217"}}

与此同时,如果Model Deployment Name改成其他模型,如ChatGPT-4o,则怎么都能成功。感觉还是适配没做好。

LiYouzhi2001 avatar Mar 11 '25 10:03 LiYouzhi2001