写点什么

利用 Python 语言调用讯飞星火认知大模型接口实战指南

作者:幂简集成
  • 2024-06-17
    北京
  • 本文字数:2369 字

    阅读完需:约 8 分钟

利用Python语言调用讯飞星火认知大模型接口实战指南

什么是 API 接口

API(应用程序编程接口)是一组规则,允许不同的软件系统相互通信。通过 API,开发者可以访问外部系统的功能和数据,而无需了解其内部实现。API 接口就像一座桥梁,连接应用程序和服务。例如,调用讯飞星火认知大模型接口时,开发者可以通过 API 请求获取自然语言处理、语音识别等智能服务。这简化了复杂功能的使用,并提升了开发效率。大多数 API 使用 HTTP/HTTPS 协议,并采用 REST 风格。REST 通过标准的 HTTP 动词(如 GET、POST)对资源进行操作。理解 API 接口的基础知识是现代开发者的必备技能。

利用 Python 语言对接讯飞星火认知大模型接口步骤

通过以下步骤,我们可以快速集成并调用讯飞星火认知大模型,实现自然语言处理功能。

步骤一:安装必要的 Python 包

首先,确保您的 Python 环境版本为 3.8 或更高版本。然后,通过以下命令安装 spark_ai_python 包:


pip install --upgrade spark_ai_python
复制代码

步骤二:配置调用参数

在开始编写代码之前,需要准备好 API 的相关配置信息,包括 API 的 URL、应用 ID、API 密钥和密钥信息等。这些信息可以在讯飞开放平台控制台获取。具体的:1、查找 API 可以通过幂简集成-API HUB快速找到大量 AI 技术相关 API,心仪的 API 可以在登录后添加到个人书签,便于下次使用快速查找。



2、创建应用 https://console.xfyun.cn/app/create



3、获取秘钥 https://console.xfyun.cn/services/bm35


步骤三:编写 Python 代码

以下是一个示例代码,展示了如何使用 Python 调用讯飞星火认知大模型 API:


from sparkai.llm.llm import ChatSparkLLM, ChunkPrintHandlerfrom sparkai.core.messages import ChatMessage
# 配置参数SPARKAI_URL = 'wss://spark-api.xf-yun.com/v3.5/chat'SPARKAI_APP_ID = 'your_app_id'SPARKAI_API_SECRET = 'your_api_secret'SPARKAI_API_KEY = 'your_api_key'SPARKAI_DOMAIN = 'generalv3.5'
if __name__ == '__main__': # 初始化星火认知大模型 spark = ChatSparkLLM( spark_api_url=SPARKAI_URL, spark_app_id=SPARKAI_APP_ID, spark_api_key=SPARKAI_API_KEY, spark_api_secret=SPARKAI_API_SECRET, spark_llm_domain=SPARKAI_DOMAIN, streaming=False, )
# 创建消息 messages = [ChatMessage( role="user", content='你好呀' )]
# 创建回调处理器 handler = ChunkPrintHandler()
# 生成回复 response = spark.generate([messages], callbacks=[handler])
# 打印回复 print(response)
复制代码

步骤四:了解请求与响应结构

请求结构

请求由三个主要部分组成:header,parameter 和 payload。


{  "header": {    "app_id": "your_app_id",    "uid": "user_id"  },  "parameter": {    "chat": {      "domain": "generalv3.5",      "temperature": 0.5,      "max_tokens": 1024    }  },  "payload": {    "message": {      "text": [        {"role": "user", "content": "你是谁"},        {"role": "assistant", "content": "我是星火认知大模型"}      ]    }  }}
复制代码

响应结构

响应包含两个主要部分:header 和 payload。


{  "header": {    "code": 0,    "message": "Success",    "sid": "unique_session_id",    "status": 2  },  "payload": {    "choices": {      "status": 2,      "seq": 0,      "text": [        {          "content": "我可以帮助你吗?",          "role": "assistant",          "index": 0        }      ]    },    "usage": {      "text": {        "question_tokens": 4,        "prompt_tokens": 5,        "completion_tokens": 9,        "total_tokens": 14      }    }  }}
复制代码

步骤五:扩展功能(Function Calling)

星火认知大模型支持功能调用(Function Calling),例如天气查询和税率查询。您可以在请求中注册这些功能,并在响应中获取调用结果。

请求示例

{  "header": {    "app_id": "your_app_id",    "uid": "user_id"  },  "parameter": {    "chat": {      "domain": "generalv3.5",      "temperature": 0.5,      "max_tokens": 1024    }  },  "payload": {    "message": {      "text": [        {"role": "user", "content": "查询明天北京的天气"}      ]    },    "functions": {      "text": [        {          "name": "天气查询",          "description": "提供天气相关信息",          "parameters": {            "type": "object",            "properties": {              "location": {"type": "string", "description": "地点,比如北京"},              "date": {"type": "string", "description": "日期,比如明天"}            },            "required": ["location"]          }        }      ]    }  }}
复制代码

响应示例

{  "header": {    "code": 0,    "message": "Success",    "sid": "unique_session_id",    "status": 2  },  "payload": {    "choices": {      "status": 2,      "seq": 0,      "text": [        {          "content": "",          "role": "assistant",          "content_type": "text",          "function_call": {            "arguments": "{\"location\":\"北京\",\"date\":\"明天\"}",            "name": "天气查询"          },          "index": 0        }      ]    },    "usage": {      "text": {        "question_tokens": 3,        "prompt_tokens": 3,        "completion_tokens": 0,        "total_tokens": 3      }    }  }}
复制代码


通过以上步骤,我们可以轻松使用 Python 对接并调用讯飞星火认知大模型 API。


发布于: 刚刚阅读数: 5
用户头像

幂简集成

关注

幂简集成,是国内领先的API资源网络平台。 2023-11-17 加入

还未添加个人简介

评论

发布
暂无评论
利用Python语言调用讯飞星火认知大模型接口实战指南_Python_幂简集成_InfoQ写作社区