diff --git a/pyproject.toml b/pyproject.toml index 5f49719e..0bbbabb2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,6 +38,7 @@ graphviz = "0.20.1" google = "3.0.0" minify-html = "0.15.0" free-proxy = "1.1.1" +langchain-groq = "0.1.3" [tool.poetry.dev-dependencies] pytest = "8.0.0" diff --git a/requirements.txt b/requirements.txt index c8990c97..8f6d1712 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,4 +11,5 @@ python-dotenv==1.0.1 tiktoken>=0.5.2,<0.6.0 tqdm==4.66.1 minify-html==0.15.0 -free-proxy==1.1.1 \ No newline at end of file +langchain-groq==0.1.3 +free-proxy==1.1.1 diff --git a/scrapegraphai/models/groq.py b/scrapegraphai/models/groq.py new file mode 100644 index 00000000..cf2f4755 --- /dev/null +++ b/scrapegraphai/models/groq.py @@ -0,0 +1,21 @@ +""" +Groq module configuration +""" + +from langchain_groq import ChatGroq + + +class Groq(ChatGroq): + """Class for wrapping Groq module""" + + def __init__(self, llm_config: dict): + """ + A wrapper for the Groq class that provides default configuration + and could be extended with additional methods if needed. + + Args: + llm_config (dict): Configuration parameters for the language model. + such as model="llama3-70b-8192" and api_key + """ + # Initialize the superclass (ChatOpenAI) with provided config parameters + super().__init__(**llm_config) \ No newline at end of file