from langchain_groq import ChatGroq from dotenv import load_dotenv from typing import Optional import os class LlamaModel: """ This class is used to interact with the Llama LLM models for text generation. Args: model: The name of the model to be used. Defaults to 'gemini-pro'. max_output_tokens: The maximum number of tokens to generate. Defaults to 1024. top_p: The probability of generating the next token. Defaults to 1.0. temperature: The temperature of the model. Defaults to 0.0. top_k: The number of top tokens to consider. Defaults to 5. """ def __init__(self, model: Optional[str] = 'llama3-70b-8192', ): load_dotenv() self.model = llm = ChatGroq(groq_api_key = os.getenv('groq_llama70_key'),model = model) def execute(self, prompt: str) -> str: try: response = self.model.invoke(prompt) res=response.content meta=response.response_metadata return {'text':res,'meta':meta} except Exception as e: return f"An error occurred: {e}"