# fastapi_openai_caps **Repository Path**: woshilu272/fastapi_openai_caps ## Basic Information - **Project Name**: fastapi_openai_caps - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-08 - **Last Updated**: 2025-09-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # openai api接口标准格式封装 ## 1.环境部署 方式一:可以直接安装python环境和requirements.txt文件中的所有包
方式二:根据我提供的Dockerfile构建docker
```shell cd build_docker docker build -t fastapi_openai_py310:v1 . ``` ## 2.修改部分代码 以api调用为例,修改chatgpt_like_api/routes/completions.py文件中13至20行 ## 3.运行 建议用docker来运行,运行脚本我已经写好,
```shell sudo sh run.sh ``` ## 4.调用示例 4.1 curl调用示例
```shell curl http://localhost:8899/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer sk-xmatrix" \ -d '{ "model": "gpt-3.5-turbo", "messages": [ { "role": "system", "content": "您是一个人工智能助手。您的首要任务是帮助用户实现他们的请求,以实现用户的满足感。" }, { "role": "user", "content": "鲁迅和周树人是什么关系" } ], "use_search": false, "stream": false }' ``` 4.2 python调用示例
```python import os from openai import OpenAI client = OpenAI( base_url = "http://localhost:8899/v1", api_key="sk-xmatrix", ) chat_completion = client.chat.completions.create( messages=[ { "role": "user", "content": "鲁迅和周树人是什么关系", } ], stream=False, model="gpt-3.5-turbo" ) print(chat_completion) ''' ChatCompletion(id='chatcmpl-1561bf24-9d94-11ef-8c81-86ee95f98041', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='鲁迅和周树人其实是同一个人。鲁迅是周树人的笔名。以下是一些详细信息:\n\n- **周树人**:这是鲁迅的本名,出生于1881年9月25日。\n- **鲁迅**:这是他的最著称的笔名,他以此名发表了大量的文学作品,包括小说、杂文、散文和翻译作品等。\n\n鲁迅是中国现代文学的重要作家、思想家,也是新文化运动的重要参与者之一。他的作品如《狂人日记》、《阿Q正传》等,对中国社会进行了深刻的批判和反思。\n\n所以,鲁迅和周树人是同一个人的两个名字。', refusal=None, role='assistant', audio=None, function_call=None, tool_calls=None))], created=1731044484, model='gpt-3.5-turbo', object='chat.completion', service_tier=None, system_fingerprint=None, usage=CompletionUsage(completion_tokens=0, prompt_tokens=0, total_tokens=0, completion_tokens_details=None, prompt_tokens_details=None), user=None) ''' ```