自己实现 OpenAI 的 /v1/embeddings 接口

自己实现 OpenAI 的 /v1/embeddings 接口

  • [0. 背景](#0. 背景)
  • [1. 修改 .env 文件](#1. 修改 .env 文件)
  • [2. 修改 get_embedding 方法](#2. 修改 get_embedding 方法)

0. 背景

使用 OpenAI 的 API Key 是需要付费的,为了节省成本,自己尝试实现 OpenAI 的各种接口。

本文章主要是实现 /v1/embeddings 和 /v1/engines/{model_name}/embeddings 接口的部分代码示例。

1. 修改 .env 文件

添加 COHERE_API_KEY,

复制代码
COHERE_API_KEY='abcdeOuJIC5scu0dB6TJW0CijNMDP5tHfu8u2xyz' # 此 key 无效

2. 修改 get_embedding 方法

复制代码
async def get_embedding(payload: Dict[str, Any]):
    # print(f"payload: {payload}")
    cohere_payload = {"texts": payload["input"], "truncate": "END"}
    # print(f"cohere_payload: {cohere_payload}")
    # print(f"os.environ['COHERE_API_KEY']: {os.environ['COHERE_API_KEY']}")
    cohere_headers = {
        'Accept': 'application/json',
        'Authorization': 'Bearer ' + os.environ['COHERE_API_KEY'],
        'Content-Type': 'application/json',
    }
    # print(f"cohere_headers: {cohere_headers}")
    async with httpx.AsyncClient() as client:
        # https://docs.cohere.com/reference/embed
        response = await client.post(
            "https://api.cohere.ai/v1/embed",
            headers=cohere_headers,
            json=cohere_payload,
            timeout=WORKER_API_TIMEOUT,
        )
        # print(f"response: {response}")
        cohere_embeddings = response.json()
        # print(f"cohere_embeddings: {cohere_embeddings}")
        embedding = {"embedding": cohere_embeddings["embeddings"], "token_num": 1}
        return embedding

完结!

相关推荐
deepseek237 小时前
OpenAI三项科学发现拆解:3-SAT亚指数算法挑战ETH,AI科学声明的验证流水线怎么搭
人工智能·算法·openai
天府云创8 小时前
OpenAI发布GPT-6.1 Terra,十分之一价格超越Astra
gpt·chatgpt·大模型·openai·terra·tibo
墨林陌10 小时前
AI 热点日报(2026-10-29):Gemini 4 Carbon登顶智能指数,Anthropic携千亿现金冲刺IPO
openai
轻松西西莱尔1 天前
用HTML复刻AI24小时资讯站:Prompt模板+6步执行+3个坑
openai·agent
️公子1 天前
GPT-6.1 Terra 上线之后:自建 Computer-Use Agent 先过模型路由、屏幕动作白名单、提交前确认、推理强度预算与回放审计闸门
openai·rpa·ai agent·审计·agent安全·computer use·gpt-6.1 terra
threerocks1 天前
2026 深度盘点:我评估了 369 个 Claude/CodeX AI 视频与自动化剪辑开源项目
aigc·openai·ai编程
墨林陌1 天前
AI 热点日报(2026-10-28):谷歌 Genie 4 世界模型发布,甲骨文算力多元化,蚂蚁灵光 2.0 上线
openai
AI日报派送佬1 天前
2026年10月27日AI行业日报|Anthropic递交IPO招股书、GPT-6.1 Terra降价、Kimi K3.1 Pro即将开源
人工智能·openai·kimi·deepseek·anthropic·ai日报·人工智能每日速报
吴凡wudianmei2 天前
从0搭一个AI Agent(一):为什么你需要的不是“调一次API”
llm·openai·agent
烬羽2 天前
给 RAG Agent 装上"仪表盘":LangSmith 全链路观测与量化评估实战
深度学习·openai·ai编程