33from typing import Annotated
44
55import azure .identity
6- from dotenv import load_dotenv
76from fastapi import Depends
87from openai import AsyncAzureOpenAI , AsyncOpenAI
98from pydantic import BaseModel
@@ -40,7 +39,6 @@ async def common_parameters():
4039 """
4140 Get the common parameters for the FastAPI app
4241 """
43- load_dotenv (override = True )
4442 OPENAI_EMBED_HOST = os .getenv ("OPENAI_EMBED_HOST" )
4543 OPENAI_CHAT_HOST = os .getenv ("OPENAI_CHAT_HOST" )
4644 if OPENAI_EMBED_HOST == "azure" :
@@ -69,7 +67,7 @@ async def common_parameters():
6967 )
7068
7169
72- async def get_azure_credentials () -> azure .identity .DefaultAzureCredential | azure .identity .ManagedIdentityCredential :
70+ def get_azure_credentials () -> azure .identity .DefaultAzureCredential | azure .identity .ManagedIdentityCredential :
7371 azure_credential : azure .identity .DefaultAzureCredential | azure .identity .ManagedIdentityCredential
7472 try :
7573 if client_id := os .getenv ("APP_IDENTITY_ID" ):
@@ -88,10 +86,11 @@ async def get_azure_credentials() -> azure.identity.DefaultAzureCredential | azu
8886 raise e
8987
9088
89+ azure_credentials = get_azure_credentials ()
90+
91+
9192async def get_engine ():
9293 """Get the agent database engine"""
93- load_dotenv (override = True )
94- azure_credentials = await get_azure_credentials ()
9594 engine = await create_postgres_engine_from_env (azure_credentials )
9695 return engine
9796
@@ -105,14 +104,12 @@ async def get_async_session(engine: Annotated[AsyncEngine, Depends(get_engine)])
105104
106105async def get_openai_chat_client ():
107106 """Get the OpenAI chat client"""
108- azure_credentials = await get_azure_credentials ()
109107 chat_client = await create_openai_chat_client (azure_credentials )
110108 return OpenAIClient (client = chat_client )
111109
112110
113111async def get_openai_embed_client ():
114112 """Get the OpenAI embed client"""
115- azure_credentials = await get_azure_credentials ()
116113 embed_client = await create_openai_embed_client (azure_credentials )
117114 return OpenAIClient (client = embed_client )
118115
0 commit comments