File size: 966 Bytes
a0d84aa
 
 
 
 
 
 
 
 
 
17427d1
 
a0d84aa
 
bf795ac
a0d84aa
 
a16d5a9
a0d84aa
 
e3e96e3
 
 
bf795ac
e3e96e3
a0d84aa
 
 
 
 
 
 
 
 
 
 
 
 
 
3650674
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
from fastapi import FastAPI
from fastapi.responses import RedirectResponse
from langserve import add_routes
from langchain.prompts import ChatPromptTemplate
from langchain.chat_models import ChatOpenAI
from dotenv import load_dotenv

from langchain_google_genai import ChatGoogleGenerativeAI

load_dotenv()
import os
app_url = os.getenv('PROXY_URL')

app = FastAPI(
  title="Mav AI API",
  version="1.0",
  description="A simple api server using Langchain's Runnable interfaces",
  openapi_url="/openapi.json"
)

@app.get("/")
async def root():
    # return json response
    return {"message": "Mav AI API is running"}

add_routes(
    path    = "/openai",
    app     = app,
    runnable= ChatOpenAI(model="gpt-4-1106-preview"),
)

add_routes(
    path    = "/google",
    app     = app,
    runnable= ChatGoogleGenerativeAI(model="gemini-pro"),
)

if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="localhost", port=7860, root_path=app_url)