File size: 886 Bytes
a0d84aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e3e96e3
 
 
 
 
a0d84aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
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()

app = FastAPI(
  title="LangChain Server",
  version="1.0",
  description="A simple api server using Langchain's Runnable interfaces",
)

@app.get("/")
async def root():
    # return json response
    return {"message": "LangChain Server 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)