matriv-rag-demo / rag_demo /rag /base /template_factory.py
AdrienB134's picture
Upload 54 files
7fdb8e9 verified
raw
history blame
487 Bytes
from abc import ABC, abstractmethod
from typing import Any
from langchain.prompts import PromptTemplate
from pydantic import BaseModel
from .query import Query
class PromptTemplateFactory(ABC, BaseModel):
@abstractmethod
def create_template(self) -> PromptTemplate:
pass
class RAGStep(ABC):
def __init__(self, mock: bool = False) -> None:
self._mock = mock
@abstractmethod
def generate(self, query: Query, *args, **kwargs) -> Any:
pass