Python 接入 OpenAI 兼容接口:请求封装、流式输出与重试实战

如何配置openai的返回Stream数据并转发到h5页面按markdown格式流式输出 ChatGPT:可以使用OpenAI API的stream参数来实现流式输出,并且可以使用max_tokens参数控制每次返回数据的长度。要在前端HTML中显示Markdown格式,您可以使用一个叫做Markdown解析器的库或工具。1.首先,通过CDN或将其下载到本地文件夹中,引入一个Markdown解析器库,比如marked.js。参数来控制每次返回的数据长度,这样也可以有效的避免返回数据过长导致内存不足的问题。用户:如何配置openai返回数据,保持流式输出,可以分段加载。在这个示例中,我们将。 阅读详情

摘要:

本文以 Python 为例,介绍 OpenAI 兼容接口的基本调用方式,涵盖环境变量配置、普通请求、流式输出、HTTP 调用、客户端封装、超时重试及常见错误处理,帮助开发者理解统一接口的实现思路,降低多模型适配成本。

前言

开发 AI 应用时,我们可能需要根据效果、成本和响应速度选择不同的模型。如果每个模型都使用一套独立 SDK,业务代码很容易与特定服务产生较强耦合。

OpenAI 兼容接口提供了一种相对统一的调用方式。只要服务支持相应协议,开发者通常可以复用消息结构和客户端代码,通过配置 API 地址与模型名称完成切换。

本文将从最小示例开始,逐步完成流式输出、客户端封装以及异常重试。

一、OpenAI 兼容接口是什么?

OpenAI 兼容接口是指服务端沿用 OpenAI SDK 常见的请求和响应结构,例如:

  1. 使用 Bearer Token 鉴权
  2. 通过 model 指定模型
  3. 使用 messages 传递对话上下文
  4. 通过 stream 控制是否启用流式输出
  5. 从 choices 中读取生成结果

典型调用形式如下:

from openai import OpenAI

client = OpenAI(
    api_key="your-api-key",
    base_url="https://your-api-provider.example/v1"
)

response = client.chat.completions.create(
    model="your-model-name",
    messages=[
        {
            "role": "user",
            "content": "你好,请介绍一下自己"
        }
    ]
)

print(response.choices[0].message.content)

不同服务对模型名称、上下文长度和扩展参数的支持可能不同,因此仍需以所使用服务的接口文档为准。

二、准备 Python 环境

本文建议使用 Python 3.9 或更高版本。

安装 OpenAI Python SDK:

pip install openai

检查安装结果:

python -c "import openai; print(openai.__version__)"

不要将 API 密钥直接写入源代码,可以先配置环境变量。

macOS 或 Linux:

export AI_API_KEY="your-api-key"
export AI_BASE_URL="https://your-api-provider.example/v1"
export AI_MODEL="your-model-name"

Windows PowerShell:

$env:AI_API_KEY="your-api-key"
$env:AI_BASE_URL="https://your-api-provider.example/v1"
$env:AI_MODEL="your-model-name"

生产环境可以使用容器密钥、云平台环境变量或专用密钥管理服务保存凭证。

三、发送第一条请求

创建 main.py 文件:

import os
from openai import OpenAI

api_key = os.getenv("AI_API_KEY")
base_url = os.getenv("AI_BASE_URL")
model = os.getenv("AI_MODEL")

if not api_key:
    raise RuntimeError("请设置 AI_API_KEY 环境变量")

if not base_url:
    raise RuntimeError("请设置 AI_BASE_URL 环境变量")

if not model:
    raise RuntimeError("请设置 AI_MODEL 环境变量")

client = OpenAI(
    api_key=api_key,
    base_url=base_url
)

response = client.chat.completions.create(
    model=model,
    messages=[
        {
            "role": "system",
            "content": "你是一名专业的 Python 开发助手。"
        },
        {
            "role": "user",
            "content": "请用 Python 编写快速排序,并说明时间复杂度。"
        }
    ],
    temperature=0.7
)

print(response.choices[0].message.content)

运行程序:

python main.py

这里有三个关键配置:

  1. AI_API_KEY:接口访问凭证
  2. AI_BASE_URL:兼容接口的基础地址
  3. AI_MODEL:实际调用的模型名称

将这些信息放在环境变量中,可以避免切换服务或模型时反复修改业务代码。

四、实现流式输出

聊天应用通常希望在模型生成过程中逐步展示内容,而不是等待完整响应。此时可以启用流式输出:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["AI_API_KEY"],
    base_url=os.environ["AI_BASE_URL"]
)

stream = client.chat.completions.create(
    model=os.environ["AI_MODEL"],
    messages=[
        {
            "role": "user",
            "content": "请解释 Python 装饰器的工作原理,并提供一个例子。"
        }
    ],
    stream=True
)

for chunk in stream:
    if not chunk.choices:
        continue

    content = chunk.choices[0].delta.content

    if content:
        print(content, end="", flush=True)

流式输出适用于:

  1. 聊天网页
  2. 命令行助手
  3. 代码生成工具
  4. 长文本写作应用
  5. 智能客服系统

需要注意,不同兼容服务的流式结束标记和用量统计方式可能存在细微差异,接入时应进行实际测试。

五、不使用 SDK,直接发送 HTTP 请求

如果项目不希望引入 OpenAI SDK,也可以使用 requests 发送标准 HTTP 请求。

安装依赖:

pip install requests

调用示例:

import os
import requests

base_url = os.environ["AI_BASE_URL"].rstrip("/")
url = f"{base_url}/chat/completions"

headers = {
    "Authorization": f"Bearer {os.environ['AI_API_KEY']}",
    "Content-Type": "application/json"
}

payload = {
    "model": os.environ["AI_MODEL"],
    "messages": [
        {
            "role": "user",
            "content": "请用简单的语言解释什么是向量数据库。"
        }
    ],
    "stream": False,
    "temperature": 0.7
}

response = requests.post(
    url,
    headers=headers,
    json=payload,
    timeout=120
)

response.raise_for_status()

data = response.json()
print(data["choices"][0]["message"]["content"])

对应的 cURL 请求形式如下:

curl -X POST "$AI_BASE_URL/chat/completions" \
  -H "Authorization: Bearer $AI_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"model\": \"$AI_MODEL\",
    \"messages\": [
      {
        \"role\": \"user\",
        \"content\": \"请介绍统一模型接口的作用\"
      }
    ],
    \"stream\": false,
    \"temperature\": 0.7
  }"

六、封装可复用的客户端

实际项目中,可以把配置检查和请求逻辑封装起来:

import os
from openai import OpenAI


class AIClient:
    def __init__(self):
        api_key = os.getenv("AI_API_KEY")
        base_url = os.getenv("AI_BASE_URL")
        self.default_model = os.getenv("AI_MODEL")

        if not api_key or not base_url or not self.default_model:
            raise RuntimeError(
                "请设置 AI_API_KEY、AI_BASE_URL 和 AI_MODEL"
            )

        self.client = OpenAI(
            api_key=api_key,
            base_url=base_url,
            timeout=120.0
        )

    def chat(
        self,
        prompt: str,
        model: str | None = None,
        system_prompt: str = "你是一名专业的 AI 助手。",
        temperature: float = 0.7
    ) -> str:
        response = self.client.chat.completions.create(
            model=model or self.default_model,
            messages=[
                {
                    "role": "system",
                    "content": system_prompt
                },
                {
                    "role": "user",
                    "content": prompt
                }
            ],
            temperature=temperature
        )

        return response.choices[0].message.content or ""


if __name__ == "__main__":
    ai = AIClient()

    result = ai.chat(
        prompt="使用 FastAPI 编写一个健康检查接口。"
    )

    print(result)

这样设计后,模型名称和接口地址都由配置控制,调用方只需要关心输入内容。

如果需要切换模型,可以在调用时传入新的模型名称:

result = ai.chat(
    prompt="分析下面这段代码的性能问题。",
    model="another-model-name"
)

七、添加超时、重试和错误处理

网络请求可能因为连接失败、限流或服务端异常而失败。生产环境应设置超时,并对适合重试的错误进行有限次数的重试。

import os
import random
import time
from openai import (
    OpenAI,
    APIConnectionError,
    APIStatusError,
    RateLimitError
)

client = OpenAI(
    api_key=os.environ["AI_API_KEY"],
    base_url=os.environ["AI_BASE_URL"],
    timeout=120.0
)


def chat_with_retry(prompt: str, max_retries: int = 3) -> str:
    for attempt in range(max_retries):
        try:
            response = client.chat.completions.create(
                model=os.environ["AI_MODEL"],
                messages=[
                    {
                        "role": "user",
                        "content": prompt
                    }
                ]
            )

            return response.choices[0].message.content or ""

        except (RateLimitError, APIConnectionError) as error:
            if attempt == max_retries - 1:
                raise

            wait_seconds = (2 ** attempt) + random.uniform(0, 0.5)

            print(f"请求暂时失败:{error}")
            print(f"等待 {wait_seconds:.1f} 秒后重试")

            time.sleep(wait_seconds)

        except APIStatusError as error:
            # 参数错误、鉴权失败等 4xx 错误通常不应直接重试
            if 400 <= error.status_code < 500:
                raise

            if attempt == max_retries - 1:
                raise

            wait_seconds = (2 ** attempt) + random.uniform(0, 0.5)
            time.sleep(wait_seconds)

    raise RuntimeError("请求失败")

增加少量随机抖动,可以减少大量客户端在同一时间重新发送请求的概率。

不要无限重试,否则可能造成:

  1. 请求堆积
  2. 重复计费
  3. 用户等待时间过长
  4. 上游服务压力进一步增加

对于可能产生副作用的任务,还应配合幂等键或业务状态检查。

八、常见问题

  1. 返回 401 Unauthorized

一般表示 API 密钥缺失、无效或没有访问权限。

可以检查环境变量是否存在,但不要在日志中输出完整密钥:

import os

api_key = os.getenv("AI_API_KEY")
print("API Key 是否已配置:", bool(api_key))
  1. 返回 400 Bad Request

常见原因包括:

  1. 模型名称填写错误
  2. 必填参数缺失
  3. 参数类型不正确
  4. 消息结构不符合要求
  5. 当前模型不支持某个扩展参数

排查时可以先保留 model 和 messages 两个核心参数,再逐个加入其他配置。

  1. 请求长时间没有返回

首先设置合理的连接和请求超时。对于生成时间较长的任务,还需要确认接口采用同步响应还是异步任务模式。

文本对话通常可以使用同步或流式接口;图片、音频和视频生成服务则可能先返回任务编号,再通过查询接口获取结果。

  1. 如何切换模型?

模型名称应通过配置传入:

model = os.getenv("AI_MODEL", "your-model-name")

部署时修改环境变量即可,不需要重新修改和打包业务代码。

  1. 所有兼容接口都完全一致吗?

不一定,常见差异包括:

  1. 模型命名规则
  2. 最大上下文长度
  3. Token 用量字段
  4. 工具调用支持程度
  5. 多模态消息格式
  6. 流式响应的附加字段

因此,兼容接口可以降低迁移成本,但正式上线前仍需针对目标模型进行测试。

九、生产环境建议

将示例代码用于正式项目时,建议补充以下能力:

  1. 使用安全的密钥管理方案,避免密钥进入代码仓库。
  2. 设置连接超时、总超时和最大重试次数。
  3. 记录请求编号、模型名称、耗时和错误类型。
  4. 不在普通日志中记录密钥和用户敏感内容。
  5. 根据业务需求限制输入长度和最大输出量。
  6. 对不同模型进行成功率、延迟和输出质量测试。
  7. 为服务异常准备降级模型或友好的错误提示。

十、为什么要使用统一接口?

如果一个项目只需要调用单一模型,直接使用相应服务的接口通常已经足够。

当项目需要测试或接入多个模型时,统一接口可以减少重复工作:

  1. 降低不同 SDK 的学习成本
  2. 统一鉴权和消息格式
  3. 减少业务代码修改
  4. 方便通过配置切换模型
  5. 便于集中记录请求耗时和错误
  6. 降低业务逻辑与模型服务的耦合程度

需要注意的是,协议兼容并不意味着能力完全相同。

例如,有的模型支持工具调用,有的模型支持图片输入,有的模型支持结构化输出,还有的模型仅支持部分参数。开发者应根据实际业务进行兼容性测试。

总结

本文完成了以下内容:

  1. 使用 Python SDK 调用 OpenAI 兼容接口
  2. 通过环境变量管理密钥、接口地址和模型名称
  3. 实现普通请求与流式输出
  4. 使用原生 HTTP 请求完成调用
  5. 封装可复用的客户端
  6. 添加超时、有限重试和错误处理

统一接口能够减少多模型接入时的重复工作,但“协议兼容”并不代表所有模型的功能和参数完全一致。生产环境仍需根据实际接口文档,完成兼容性、稳定性和数据安全测试。

采用流式输出搭建chatgpt网站,无需搭建js服务,逐字输出,加快响应速度 无需创建js服务,方便把已有的非流式输出代码改为流式代码,提高响应速度,浏览器指纹统计用户 阅读详情

相关推荐

DeepSeek API接入实战:从OpenAI兼容接口到reasoning_content避坑指南

大模型API正在成为应用开发的基础设施,OpenAI兼容接口已成为行业事实标准。无论是DeepSeek还是GPT系列模型,都支持通过Chat Completions协议进行调用,这意味着开发者切换模型时无需重写架构,只需调整Base URL与模型名。在实际接入中,Token计费直接决定成本,而推理模型的reasoning_content字段处理则是多轮对话高频报错的根源,例如HTTP 400错误提示。理解这些底层原理,能显著提升工程效率。本文从Python SDK调用出发,覆盖流式输出、多轮对话、开发者工具

weixin_34248487的博客 370

Python 使用OpenAi库 输出流式数据

【代码】Python 使用OpenAi库 输出流式数据。

qq_41200374的博客 1404

AI聚合API统一接入多模型:从OpenAI兼容原理到智能体实战

大语言模型应用开发中,多模型接入与API Key分散管理是常见痛点。AI聚合API作为一种统一中转层,将不同厂商的接口规范转换为OpenAI兼容协议,使开发者仅需维护单一Base URL和密钥即可调用Claude、Glm、Kimi等多种模型。理解其字段映射、模型路由与流式输出机制,是构建高效模型调用层的基础。该技术在智能体开发、多模型对比、生产级降级容错等场景中具有显著价值。本文从聚合API的设计思路出发,结合Python环境配置、OpenAI SDK接入、流式输出示例,以及Claude Code、Dify

weixin_33895657的博客 421

DeepSeek API调用实战:OpenAI兼容接口接入与reasoning_content报错排查

随着大模型应用加速落地,API接口的兼容性与稳定性成为开发者关注的核心问题。OpenAI兼容接口凭借成熟的生态,已成为众多大模型接入的通用标准,极大降低了系统的迁移与集成成本。DeepSeek作为调用量快速增长的模型服务,提供了OpenAI格式的接口,使开发者能够以极低门槛接入对话、推理等能力。然而在生产环境中,调用推理模型时经常出现HTTP 400错误,尤其是`reasoning_content`字段在网关转发过程中丢失,导致请求失败。理解该字段的原理与透传机制,掌握VSCode、企业微信等实际场景的接入

weixin_34252090的博客 368

DeepSeek V4接入实战:Codex兼容与Responses API全解析

随着大模型应用从简单对话走向智能体与编码助手场景,API 范式也在快速演进。从早期 Chat Completions 的对话补全,到面向多步骤工具调用的 Responses API,开发者需要理解不同接口的适用边界。Codex 兼容体系作为典型的编程智能体方案,允许通过自定义 base_url 接入不同模型,为团队提供了灵活替换高性能模型的可能。在此背景下,DeepSeek V4 凭借兼容 OpenAI 协议的接入方式与社区热议的性能提升,成为不少团队评估迁移的对象。无论是使用 curl 快速验证、Pyth

weixin_33850890的博客 435

DeepSeek API接入实战:OpenAI兼容、本地部署与工具链集成指南

大模型API的标准化接入,正在显著降低开发者切换模型的成本。在模型能力趋同的背景下,OpenAI兼容API已成为行业默认接口规范,使得更换底层模型只需修改base_url和api_key即可完成。DeepSeek凭借OpenAI兼容接口、开源权重与快速完善的工具链生态,成为开发者实现低成本迁移的热门选项。从云端API调用到本地私有化部署,从VSCode插件到企业微信机器人,DeepSeek已能无缝嵌入主流开发流程。同时,面对GPT-5.6免费等价格策略,构建模型网关与降级设计比依赖单一厂商更可靠。本文围绕A

weixin_33896726的博客 532

Ollama OpenAI兼容接口调试与生产化实践

OpenAI兼容接口是本地大模型接入的关键协议桥接层,其核心原理在于将标准OpenAI REST API请求映射为本地模型推理调用,但并非语义级全兼容。技术价值体现在降低云原生AI代码迁移成本、支持快速原型验证和离线安全推理;典型应用场景包括私有化部署的智能客服、会议纪要生成、文档摘要等边缘AI服务。实践中需重点关注协议实验性、服务健康检查、SDK超时重试缺失等关键差异。本文聚焦Ollama的OpenAI兼容接口调试方法论与稳定性加固路径。

aibiba0894的博客 516

本地大模型API对接实战:OpenAI兼容方案与Python实现

大模型API对接是AI工程化中的关键技术环节,其核心在于实现高效稳定的模型服务调用。通过OpenAI兼容接口标准,开发者可以统一对接各类本地部署的大模型(如Llama 2、ChatGLM)。本文以Python技术栈为基础,详细讲解如何利用openai库、tiktoken和backoff等工具实现流式传输、token计数和异常重试等生产级功能。针对本地模型部署场景,特别介绍了FastChat服务对接技巧和常见问题排查方法,帮助开发者快速构建可靠的AI应用接口。方案适用于智能对话系统、内容生成等需要控制推理参数

weixin_28222493的博客 240

OpenAI兼容接口实战:GPT-5.6模型集成与生产环境优化

API接口标准化是AI应用开发的基础,OpenAI格式因其简洁性已成为行业事实标准。其核心原理基于RESTful架构,通过统一的请求头、认证机制和数据结构实现跨平台兼容。这种标准化设计的技术价值在于大幅降低开发成本,开发者只需修改基础URL和API密钥即可在不同模型服务间无缝切换。在实际应用场景中,兼容接口广泛应用于聊天机器人、内容生成和智能客服等AI服务。本文基于GPT-5.6系列模型,深入解析Bearer Token认证和流式输出等关键技术,提供从环境配置到错误处理的全链路实践方案,帮助开发者快速集成第

diaomeijiao3430的博客 395

豆包大模型API实战:Python接入与多轮对话智能体开发

大模型API已成为AI应用开发的核心基础设施,开发者通过标准化接口即可快速获得自然语言理解与生成能力。Python作为数据与AI领域的主流语言,具备生态丰富、上手快等优势,结合OpenAI兼容接口设计,可大幅降低大模型服务的集成成本。在实际工程中,开发者不仅需要掌握API的鉴权配置、消息结构(system/user/assistant)与关键参数(temperature、max_tokens)的调优,还需关注多轮对话的状态维护、流式输出体验、上下文长度控制以及成本与安全等生产级问题。通过合理的提示词设计与代

weixin_34133829的博客 554

2024年 最新python调用ChatGPT实战教程

这个之前经常用到,简单记录一下,注意目前chatgpt 更新了,这个是最新版的,如果不是最新版的,请自行升级。

风吹落叶的博客 2269

OpenAI企业服务打法与API接入实战:从密钥管理到RAG知识库

大模型API的调用门槛并不高,但企业级应用真正需要的是稳定、安全、可控的AI服务能力。从技术原理上看,开发者不仅要掌握基础接口调用,还需理解密钥管理、流式输出、容错重试与用量监控等工程实践。这些能力决定了AI能否从原型走向生产环境,能否支撑起知识库问答、智能客服、自动化流程等真实业务场景。文章围绕OpenAI的企业服务商业化布局,拆解其“买场景、建团队、借渠道”的ToB打法,并给出从环境配置、模型调用、容错封装到RAG落地的完整技术路径,帮助技术团队在自身项目中构建可交付的企业级AI能力。

weixin_34006965的博客 615

【AI大模型应用开发】【LangChain系列】9. 实用技巧:大模型的流式输出在 OpenAI 和 LangChain 中的使用

当大模型的返回文字非常多时,返回完整的结果会耗费比较长的时间。如果等待大模型形成完整的答案再展示给用户,明显会给用户不好的体验。所以,现在市面上大多数的AI应用,在给用户结果时,都是以流式输出的方式展示给用户的。今天我们来学习下如何流式输出大模型的返回结果。本文将涵盖 LangChain 的流式输出方式和 OpenAI 原生的流式输出方式。

同学小张的博客 5960

Grok接入实战:用grok2api将上游接口转换为OpenAI兼容API

以大模型为代表的AI能力正加速进入企业应用,而OpenAI兼容API已成为模型接入层的事实标准。然而,不同厂商在鉴权、模型命名、流式返回等细节上仍存在差异,导致直接切换模型时常需大量联调。协议适配层通过将上游接口统一转换为标准格式,有效降低多模型接入成本。grok2api正是这样一个开源适配方案,它将Grok上游接口包装为OpenAI兼容API,使现有SDK、开源平台(如Dify、FastGPT)无需改动即可调用Grok。内容涵盖协议转换原理、Docker部署方法、健康检查与对话验证流程,并总结了常见坑点和

weixin_30512043的博客 311

【SLAM】探索explore_lite在移动机器人自主建图中的高效边界检测策略

本文深入解析了explore_lite在移动机器人自主建图中的应用,重点探讨了其高效的贪婪边界检测策略。该工具包专为资源受限平台设计,通过直接利用SLAM生成的地图信息,以极低的计算开销实现快速、稳定的未知区域探索,并与move_base导航框架无缝协作,是轻量级机器人自主探索的优选方案。

purple的博客 1067

实战:如何通过修改VTS和HTS调整GC4653 sensor帧率(附完整计算步骤)

本文以GC4653图像传感器为例,详细解析了通过修改VTS和HTS寄存器来精确调整输出帧率的完整流程。文章深入剖析了帧率计算公式FPS = PCLK / (VTS × HTS)的核心原理,并提供了从获取寄存器参数、计算目标VTS值到系统验证的实战步骤,帮助工程师掌握独立优化Sensor性能、提升低照度画质的关键技能。

gin88的博客 338

RAGFlow API 实战:如何用 Python SDK 快速集成 OpenAI 兼容接口(附错误处理技巧)

本文详细介绍了如何使用RAGFlow Python SDK快速集成其OpenAI兼容接口,并构建一个简单的问答机器人。文章重点拆解了从环境准备、SDK安装到代码迁移的完整流程,并提供了针对401、403等常见API错误的实用处理技巧,帮助开发者高效、稳健地完成集成工作。

l3m4n的博客 949

无刷电机FOC控制入门:磁场、洛伦兹力与坐标转换详解

本文深入解析无刷电机FOC(磁场定向控制)的核心原理,从电磁学基础的磁场与洛伦兹力出发,详细阐述了如何通过Clarke变换、Park变换等坐标转换技术,将三相交流解耦为直流量进行控制,最终利用SVPWM技术实现平滑、高效的电机驱动。文章旨在帮助开发者理解FOC的物理本质与数学框架,为机器人、无人机等高性能应用奠定基础。

weixin_29306011的博客 267

Anthropic API接入实战:Python SDK、OpenAI差异与报错排查

大模型API已成为AI应用开发的基础能力,Anthropic API作为其中重要一员,凭借Claude系列模型的安全可控特性,受到开发者广泛关注。理解API接入原理是工程落地的第一步:其Messages API采用可预测的请求结构,通过x-api-key认证,并强制要求max_tokens参数以控制成本。掌握Python SDK调用方法,能快速实现普通对话、多轮交互和流式输出等功能。与OpenAI API相比,两者在请求格式和响应体结构上存在明显差异,需通过适配层实现平滑切换。当遇到unable to co

weixin_34054866的博客 502

FPGA高速通信双核解析:CMAC与Interlaken硬核的实战对比

本文深入对比了FPGA中两大高速通信硬核CMAC与Interlaken的核心差异与应用场景。CMAC作为标准以太网接入方案,适用于网卡、交换机等需对外互联的场景;而Interlaken则以极低延迟和高效通道化能力,专为芯片间、板间裸数据高速传输设计。文章通过实战案例与性能指标分析,为FPGA高速通信方案选型提供清晰指南。

f9g0h的博客 846

Ubuntu20.04下运行VINS系列:VINS-Mono、VINS-Fusion和GVINS

安装好了VINS-Mono所需的ROS noetic、Eigen3.4.0、Ceres2.10和OpenCV4.2.0等。VINS-Mono是在ROS melodic以及Ceres1的环境下开发的,因此需要适配高版本的环境。

zardforever123的博客 2万+

腾讯混元API上手指南:Python零基础+OpenAI兼容模式实战

大模型API调用是当前AI工程落地的核心能力,其本质是HTTP协议封装、鉴权机制、流式响应处理与成本计量的系统性实践。理解token计费逻辑、错误码归因和网关熔断原理,直接决定服务稳定性与运维效率。在OpenAI生态广泛普及的背景下,腾讯混元API凭借兼容模式降低迁移门槛,但system角色处理、function calling参数结构及流式chunk边界等关键差异,常导致50%以上POC失败。本文聚焦Python技术栈,结合CrazyRouter网关与keyring密钥管理,提供从零配置到生产压测的全链路

972

【OpenClaw从入门到精通】第20篇:OpenClaw实战—从零搭建教育自动化助教系统(作业批改+智能答疑+学情分析)【2026实测】

本文基于OpenClaw开源框架,聚焦教育行业“答疑重复、批改耗时、学情模糊”三大核心痛点,提供从环境部署到功能落地的全流程实操方案。通过整合QQ群交互、代码分析、数据可视化等技能,构建“智能答疑+作业批改+学情分析”的自动化助教系统。系统支持7×24小时群聊答疑、多语言作业自动评审、学情数据周报生成,经实测可使助教工作时间减少60%、作业批改效率提升5-10倍、学情问题识别提前5周。文中包含完整配置步骤、可直接运行的代码示例及避坑指南,兼顾新手入门与进阶实操,帮助教育工作者快速落地自动化工具,从重复劳动中

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1452

从零构建大模型智能体:统一消息格式,快速接入大语言模型

一站式封装 LLM 调用,轻松构建智能 Agent,支持流式与非流式输出。

日积月累,天道酬勤 1415

MATLAB应用实战系列(四十三)-基于MATLAB的光伏并网系统仿真设计

在Matlab中建立光伏电站接入系统模型,包括光伏发电逆变器及负荷模型等,仿真分析接入点处的电能质量,实现高品质并网运行。 壹 构建太阳能电池模型。 初始化参数如下图所示。 贰 构建MPPT控制模型。 具体封装如下所示: 通过PWM算法实现DC-DC稳步输出最大点。 叁 三、构建直流短距离输电线路。 仿真模型如下图: 通过电容来均衡线路电压,使得线路电压保持可靠性。 肆 通过逆变器变换,使得直流线路转换成...

wenyusuran的专栏 3170

基于STM32F103设计的智能门锁(支持多种开锁解锁方式)

这个智能锁模型是基于STM32平台开发的,支持多种开锁方式。其中,一种是使用RC522射频卡读卡器读取IC卡卡号和内部数据,并验证身份后开锁;另一种是通过连接蓝牙地址来确认业主身份,实现了蓝牙自动开锁功能;最后一种是通过ESP8266连接腾讯云物联网平台,并且用户可以通过微信小程序“腾讯连连”进行远程开锁和关锁。这样,用户就可以选择最方便的方式来进行开锁操作了。

3万+
上一篇: vibe coding大潮之下,产品经理如何自处?
下一篇: Python 实现异步图片生成 API:任务提交、状态轮询与结果下载
Kevin_ssr
博客等级 码龄2年 8粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值