Spaces:
Runtime error
Runtime error
| from fastapi import FastAPI, Request | |
| from fastapi.responses import RedirectResponse | |
| import requests | |
| from pydantic import BaseModel | |
| from tools_config import select_tools, run_tools, get_fundamentals, get_performance, get_recent_dividends_rate | |
| from rag_config import vectorstore_config, weaviate_client_config, close_weaviate_client, retrievers | |
| from contextlib import asynccontextmanager | |
| from chain import final_chain | |
| async def lifespan(app: FastAPI): | |
| app.state.weaviate_client = weaviate_client_config() | |
| app.state.retrievers = retrievers(app.state.weaviate_client) | |
| yield | |
| close_weaviate_client(app.state.weaviate_client) | |
| app = FastAPI(title="Agent_LLM_API", lifespan=lifespan) | |
| class Query(BaseModel): | |
| question: str | |
| ticker: str | |
| def root(): | |
| return RedirectResponse(url="/docs") | |
| def query(query: Query, request: Request): | |
| response = final_chain((request.app.state.retrievers)).invoke({ | |
| "question": query.question, | |
| "ticker": query.ticker | |
| }) | |
| return response |