44
55from app .core .config import Settings , get_settings
66from app .services .document_service import DocumentService
7- from app .services .llm .base import LLMService
8- from app .services .llm .factory import LLMFactory
7+ from app .services .embedding .base import EmbeddingService
8+ from app .services .embedding .factory import EmbeddingServiceFactory
9+ from app .services .llm .base import CompletionService
10+ from app .services .llm .factory import CompletionServiceFactory
911from app .services .vector_db .base import VectorDBService
1012from app .services .vector_db .factory import VectorDBFactory
1113
1214
13- def get_llm_service (settings : Settings = Depends (get_settings )) -> LLMService :
15+ def get_llm_service (
16+ settings : Settings = Depends (get_settings ),
17+ ) -> CompletionService :
1418 """Get the LLM service for the application."""
15- llm_service = LLMFactory . create_llm_service (settings )
19+ llm_service = CompletionServiceFactory . create_service (settings )
1620 if llm_service is None :
1721 raise ValueError (
1822 f"Failed to create LLM service for provider: { settings .llm_provider } "
1923 )
2024 return llm_service
2125
2226
27+ def get_embedding_service (
28+ settings : Settings = Depends (get_settings ),
29+ ) -> EmbeddingService :
30+ """Get the embedding service for the application."""
31+ embedding_service = EmbeddingServiceFactory .create_service (settings )
32+ if embedding_service is None :
33+ raise ValueError (
34+ f"Failed to create embedding service for provider: { settings .embedding_provider } "
35+ )
36+ return embedding_service
37+
38+
2339def get_vector_db_service (
2440 settings : Settings = Depends (get_settings ),
25- llm_service : LLMService = Depends (get_llm_service ),
41+ embedding_service : EmbeddingService = Depends (get_embedding_service ),
42+ llm_service : CompletionService = Depends (get_llm_service ),
2643) -> VectorDBService :
2744 """Get the vector database service for the application."""
2845 vector_db_service = VectorDBFactory .create_vector_db_service (
29- llm_service , settings
46+ embedding_service , llm_service , settings
3047 )
3148 if vector_db_service is None :
3249 raise ValueError (
@@ -38,7 +55,7 @@ def get_vector_db_service(
3855def get_document_service (
3956 settings : Settings = Depends (get_settings ),
4057 vector_db_service : VectorDBService = Depends (get_vector_db_service ),
41- llm_service : LLMService = Depends (get_llm_service ),
58+ llm_service : CompletionService = Depends (get_llm_service ),
4259) -> DocumentService :
4360 """Get the document service for the application."""
4461 return DocumentService (vector_db_service , llm_service , settings )
0 commit comments