mirror of
https://github.com/lightbroker/llmsecops-research.git
synced 2026-08-18 17:17:16 +02:00
building guidelines services
This commit is contained in:
+6
-3
@@ -3,12 +3,15 @@ from langchain.prompts import PromptTemplate
|
||||
|
||||
from src.text_generation.ports.abstract_embedding_model import AbstractEmbeddingModel
|
||||
from src.text_generation.ports.abstract_foundation_model import AbstractFoundationModel
|
||||
from src.text_generation.services.guidelines.rag_guidelines_service import RetrievalAugmentedGenerationGuidelinesService
|
||||
from src.text_generation.services.nlp.abstract_text_generation_completion_service import AbstractTextGenerationCompletionService
|
||||
from src.text_generation.services.guidelines.abstract_rag_guidelines_service import AbstractRetrievalAugmentedGenerationGuidelinesService
|
||||
from src.text_generation.services.utilities.abstract_response_processing_service import AbstractResponseProcessingService
|
||||
from src.text_generation.services.utilities.response_processing_service import ResponseProcessingService
|
||||
|
||||
|
||||
class RetrievalAugmentedGenerationCompletionService(AbstractTextGenerationCompletionService):
|
||||
class RetrievalAugmentedGenerationCompletionService(
|
||||
AbstractTextGenerationCompletionService):
|
||||
def __init__(
|
||||
self,
|
||||
foundation_model: AbstractFoundationModel,
|
||||
@@ -19,8 +22,8 @@ class RetrievalAugmentedGenerationCompletionService(AbstractTextGenerationComple
|
||||
super().__init__()
|
||||
self.language_model_pipeline = foundation_model.create_pipeline()
|
||||
self.embeddings = embedding_model.embeddings
|
||||
self.rag_guidelines_service = rag_guidelines_service
|
||||
self.response_processing_service = response_processing_service
|
||||
self.rag_guidelines_service: RetrievalAugmentedGenerationGuidelinesService = rag_guidelines_service
|
||||
self.response_processing_service: ResponseProcessingService = response_processing_service
|
||||
|
||||
|
||||
def invoke(self, user_prompt: str) -> str:
|
||||
|
||||
@@ -3,6 +3,9 @@ from langchain_core.output_parsers import StrOutputParser
|
||||
from langchain_core.runnables import RunnablePassthrough
|
||||
|
||||
from src.text_generation.common.constants import Constants
|
||||
from src.text_generation.services.guidelines.abstract_chain_of_thought_security_guidelines_service import AbstractChainOfThoughtSecurityGuidelinesService
|
||||
from src.text_generation.services.guidelines.abstract_reflexion_security_guidelines_service import AbstractReflexionSecurityGuidelinesService
|
||||
from src.text_generation.services.guidelines.abstract_retrieval_augmented_generation_context_security_guidelines_service import AbstractRetrievalAugmentedGenerationContextSecurityGuidelinesService
|
||||
from src.text_generation.services.nlp.abstract_prompt_template_service import AbstractPromptTemplateService
|
||||
from src.text_generation.services.nlp.abstract_text_generation_completion_service import AbstractTextGenerationCompletionService
|
||||
from src.text_generation.ports.abstract_foundation_model import AbstractFoundationModel
|
||||
@@ -32,8 +35,8 @@ class TextGenerationCompletionService(
|
||||
self._use_reflexion = True
|
||||
|
||||
def _extract_assistant_response(self, text):
|
||||
if self.constants.ASSISTANT_TOKEN in text:
|
||||
return text.split(self.constants.ASSISTANT_TOKEN)[-1].strip()
|
||||
if self.constants.PHI_3_ASSISTANT_START_TOKEN in text:
|
||||
return text.split(self.constants.PHI_3_ASSISTANT_START_TOKEN)[-1].strip()
|
||||
return text
|
||||
|
||||
def without_guidelines(self) -> AbstractTextGenerationCompletionService:
|
||||
|
||||
Reference in New Issue
Block a user