Posted in

DeepSeek API 升级,支持续写、FIM、Function Calling、JSON Output_AI阅读总结 — 包阅AI

包阅导读总结

1. `DeepSeek API`、`功能更新`、`模型调用`、`输出格式`、`Beta 接口`

2. DeepSeek API 迎来更新,新增多种接口和功能,包括 JSON Output、Function Calling、对话前缀续写、FIM 补全等,Beta 接口已开放,相关模型版本后续会发布到开源社区。

3.

– DeepSeek API 升级

– 更新接口 `/chat/completions`

– 新增接口 `/completions`

– 新功能

– JSON Output:强制模型输出 JSON 格式字符串,需设置参数和提示词格式等

– Function Calling:通过调用外部工具增强与物理世界交互能力

– 对话前缀续写(Beta):指定最后一条 assistant 消息前缀进行补全,调整 max_tokens 上限为 8K

– FIM 补全(Beta):提供自定义前缀/后缀进行内容补全

– 说明

– 新功能均可使用 deepseek-chat 和 deepseek-coder 模型调用

– 参考官方文档获取详细调用方法

– Beta 接口不稳定,变动灵活,模型版本后续开源

思维导图:

文章地址:https://mp.weixin.qq.com/s/7j9chWmUBl3hNtftjbcuMQ

文章来源:mp.weixin.qq.com

作者:深度求索

发布时间:2024/7/26 7:00

语言:中文

总字数:1234字

预计阅读时间:5分钟

评分:87分

标签:DeepSeek API,JSON 输出,Function Calling,FIM 补全,模型交互


以下为原文内容

本内容来源于用户推荐转载,旨在分享知识与观点,如有侵权请联系删除 联系邮箱 media@ilingban.com

今天,DeepSeek API 迎来更新,装备了新的接口功能,来释放模型的更多潜力:

更新接口/chat/completions

新增接口 /completions

所有新功能,均可使用 deepseek-chatdeepseek-coder模型调用。
更新接口/chat/completions

1.JSON Output,增强内容格式

DeepSeek API 新增 JSON Output 功能,兼容 OpenAI API,能够强制模型输出 JSON 格式的字符串。
在进行数据处理等任务时,该功能可以让模型按预定格式返回 JSON,方便后续对模型输出内容进行解析,提高程序流程的自动化能力。

要使用 JSON Output 功能,需要:

  1. 设置response_format参数为 {'type': 'json_object'}

  2. 用户需要在提示词中,指导模型输出 JSON 的格式,来确保输出格式符合预期

  3. 合理设置 max_tokens,防止 JSON 字符串被中途截断

以下为一个 JSON Output功能的使用样例。在这个样例中,用户给出一段文本,模型对文本中的问题 & 答案进行格式化输出。

2. Function Calling,连接物理世界

DeepSeek API 新增 Function Calling 功能,兼容 OpenAI API,通过调用外部工具,来增强模型与物理世界交互的能力。
Function Calling 功能支持传入多个 Function(最多 128 个),支持并行 Function Calling。
下图展示了将deepseek-coder整合到开源大模型前端 LobeChat 的效果。在这个例子中,我们开启了“网站爬虫”插件,来实现对网站的爬取和总结。
下图展示了使用 Function Calling 功能的交互过程:

3. 对话前缀续写(Beta),更灵活的输出控制

对话前缀续写沿用了对话补全的 API 格式,允许用户指定最后一条assistant消息的前缀,来让模型按照该前缀进行补全。该功能也可用于输出长度达到max_tokens被截断后,将被截断的消息进行拼接,重新发送请求对被截断内容进行续写。

要使用对话前缀续写功能,需要:

  1. 设置base_url

    https://api.deepseek.com/beta来开启 Beta 功能

  2. 确保 messages 列表里最后一条消息的roleassistant并设置最后一条消息的prefix参数为True
    如:{“role”: “assistant”: “content”: “在很久很久以前,”, “prefix”: True}

以下为对话前缀续写功能的使用样例。在这个例子里,设置了 assistant 消息开头为‘“`python\n’,以强制其以代码块开始,并设置 stop 参数为‘“`’,让模型不输出多余的内容。

为了满足更长文本输出的场景,我们在 Beta 版 API 中,将max_tokens参数的上限调整为 8K。

要提高到 8K 最长输出,需要:

  1. 设置base_url

    https://api.deepseek.com/beta来开启 Beta 功能

  2. max_tokens默认为 4096。开启 Beta 功能后,max_tokens最大可设置为 8192


新增接口/completions

1.FIM 补全(Beta),使能续写场景

DeepSeek API 新增 FIM补全接口,兼容 OpenAI 的 FIM 补全 API,允许用户提供自定义的前缀/后缀(可选),让模型进行内容补全。该功能常用于故事续写、代码补全等场景。FIM 补全接口收费与对话补全相同。
要使用 FIM 补全接口,需要设置base_urlhttps://api.deepseek.com/beta来开启 Beta 功能。
以下为 FIM 补全接口的使用样例。在这个例子中,用户提供斐波那契数列函数的开头和结尾,模型对中间内容进行补全。

更新说明

所有新功能的详细调用方法,请参考 DeepSeek API 官方文档:

https://platform.deepseek.com/api-docs/zh-cn/

Beta 接口已开放给所有用户使用,用户需要设置base_urlhttps://api.deepseek.com/beta来开启 Beta 功能。

Beta 接口属于不稳定接口,后续测试、发布计划会灵活变动,敬请谅解。
相关模型版本,在功能稳定后会发布到开源社区,敬请期待。
点击下方阅读原文查看详细指南