Skip to content

Commit 47bba6f

Browse files
committed
feat: Custom LlamaCpp class
Modified the langchain community LlamaCpp Class to take repo_id and filename as input to directly use any model from Huggingface Hub compatible with LlamaCpp.
1 parent 1e9f8c5 commit 47bba6f

File tree

3 files changed

+382
-13
lines changed

3 files changed

+382
-13
lines changed

huginn_hears/main.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
from transformers import AutoTokenizer
88

99
from huginn_hears.utils import refine_summary
10+
from huginn_hears.utils import CustomLlamaCpp
1011

11-
from langchain_community.llms import LlamaCpp
1212
from langchain.schema.document import Document
1313
from langchain_text_splitters import RecursiveCharacterTextSplitter
1414
from langchain.prompts import PromptTemplate
@@ -170,8 +170,9 @@ class MistralSummarizer:
170170
refine_template (str, optional): The refine template to use for refining summaries. Defaults to None.
171171
"""
172172

173-
def __init__(self, model_path, text_splitter=RecursiveCharacterTextSplitter, prompt_template: str = None, refine_template: str = None):
174-
self.model_path = model_path
173+
def __init__(self, repo_id: str, filename: str, text_splitter=RecursiveCharacterTextSplitter, prompt_template: str = None, refine_template: str = None):
174+
self.repo_id = repo_id
175+
self.filename = filename
175176
self.layers = -1 if torch.cuda.is_available() else None
176177
self.model = None
177178
self.text_splitter = text_splitter(chunk_size=2048)
@@ -193,8 +194,9 @@ def load_model(self, n_ctx=4096, max_tokens=512, n_batch=512, n_threads=6, tempe
193194
Yields:
194195
LlamaCpp: The loaded Mistral model.
195196
"""
196-
self.model = LlamaCpp(
197-
model_path=self.model_path,
197+
self.model = CustomLlamaCpp(
198+
repo_id=self.repo_id,
199+
filename=self.filename,
198200
n_gpu_layers=self.layers,
199201
n_ctx=n_ctx,
200202
max_tokens=max_tokens,
@@ -331,7 +333,7 @@ def run(self, extractive_summary=False):
331333
SVÆRT VIKTIG: Ikke nevn deg selv, kun skriv sammendraget. Ingen intro, ingen annen tekst [/INST]
332334
"""
333335
transcriber = WhisperTranscriber()
334-
summarizer = MistralSummarizer(model_path='/home/magsam/llm_models/mistral-7b-instruct-v0.2.Q4_K_M.gguf',
336+
summarizer = MistralSummarizer(repo_id="TheBloke/dolphin-2.6-mistral-7B-dpo-laser-GGUF", filename='*Q4_K_M.gguf',
335337
prompt_template=prompt_template, refine_template=refine_template)
336338
extractor = ExtractiveSummarizer()
337339
audio_path = '/home/magsam/workspace/huginn-hears/test_files/king.mp3'

0 commit comments

Comments
 (0)