mirror of
https://github.com/BerriAI/litellm.git
synced 2025-04-26 11:14:04 +00:00
50 lines
1.4 KiB
Python
50 lines
1.4 KiB
Python
# import sys, os
|
|
# sys.path.insert(
|
|
# 0, os.path.abspath("../")
|
|
# ) # Adds the parent directory to the system path
|
|
from fastapi import FastAPI, Request, status, HTTPException, Depends
|
|
from fastapi.responses import StreamingResponse
|
|
from fastapi.security import OAuth2PasswordBearer
|
|
from fastapi.middleware.cors import CORSMiddleware
|
|
|
|
app = FastAPI()
|
|
|
|
app.add_middleware(
|
|
CORSMiddleware,
|
|
allow_origins=["*"],
|
|
allow_credentials=True,
|
|
allow_methods=["*"],
|
|
allow_headers=["*"],
|
|
)
|
|
|
|
|
|
# for completion
|
|
@app.post("/chat/completions")
|
|
@app.post("/v1/chat/completions")
|
|
async def completion(request: Request):
|
|
return {
|
|
"id": "chatcmpl-123",
|
|
"object": "chat.completion",
|
|
"created": 1677652288,
|
|
"model": "gpt-3.5-turbo-0125",
|
|
"system_fingerprint": "fp_44709d6fcb",
|
|
"choices": [
|
|
{
|
|
"index": 0,
|
|
"message": {
|
|
"role": "assistant",
|
|
"content": "\n\nHello there, how may I assist you today?",
|
|
},
|
|
"logprobs": None,
|
|
"finish_reason": "stop",
|
|
}
|
|
],
|
|
"usage": {"prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21},
|
|
}
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import uvicorn
|
|
|
|
# run this on 8090, 8091, 8092 and 8093
|
|
uvicorn.run(app, host="0.0.0.0", port=8090)
|