Skip to main content

1. 使用场景

Function Calling 功能让模型能够调用外部工具,来增强自身能力。 该能力可以通过外部工具,通过大模型作为大脑调用外部工具(如搜索外部知识、查阅行程、或者某些特定领域工具),有效解决模型的幻觉、知识时效性等问题。

2. 使用方式

2.1 通过 REST API 添加 tools 请求参数

在请求体中添加
比如完整的 payload 信息:

2.2 通过 OpenAI 库请求

该功能和 OpenAI 兼容,在使用 OpenAI 的库时,对应的请求参数中添加tools=[对应的 tools] 比如:

3. 支持模型列表

目前支持的模型列表有:
  • Deepseek 系列:
    • deepseek-ai/DeepSeek-R1
    • deepseek-ai/DeepSeek-V3
    • deepseek-ai/DeepSeek-R1-Distill-Qwen-32B
    • deepseek-ai/DeepSeek-R1-Distill-Qwen-14B
    • deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B
  • Qwen 系列:
    • Qwen/Qwen2.5-72B-Instruct
    • Qwen/Qwen2.5-32B-Instruct
    • Qwen/Qwen2.5-14B-Instruct
    • Qwen/Qwen2.5-7B-Instruct
  • GLM 系列:
    • THUDM/GLM-Z1-32B-0414
    • THUDM/GLM-4-32B-0414
    • THUDM/GLM-4-9B-0414
注意:支持的模型列表在不断调整中,请查阅 本文档 了解最新支持的模型列表。

4. 使用示例

4.1. 示例 1:通过 function calling 来扩展大语言模型的数值计算能力

本代码输入 4 个函数,分别是数值的加、减、比较大小、字符串中重复字母计数四个函数 来演示通过 function calling 来解决大语言模型在 tokens 预测不擅长的领域的执行问题。
模型将输出:

4.2. 示例 2:通过 function calling 来扩展大语言模型对外部环境的理解

本代码输入 1 个函数,通过外部 API 来查询外部信息
模型将输出: