add gemini mode
This commit is contained in:
@ -7,6 +7,7 @@ import streamlit as st
|
||||
from langchain.chains import LLMChain
|
||||
from langchain.prompts import PromptTemplate
|
||||
from langchain_ollama import ChatOllama
|
||||
from langchain_google_genai import ChatGoogleGenerativeAI
|
||||
from utils import parse_config
|
||||
|
||||
|
||||
@ -24,15 +25,24 @@ class TranslatorApp:
|
||||
'話則請回傳一模一樣的句子,若是的話則請將該句翻譯成{target_lang},並且符合{description}'
|
||||
'(僅回傳翻譯結果即可)。'
|
||||
)
|
||||
llm = ChatOllama(
|
||||
base_url=self._config['app']['ollama_url'],
|
||||
model=self._config['app']['ollama_model_name'],
|
||||
temperature=self._config['app']['ollama_temperature'],
|
||||
max_tokens=self._config['app']['ollama_max_tokens'],
|
||||
top_p=self._config['app']['ollama_top_p'],
|
||||
keep_alive=self._config['app']['ollama_keep_alive'],
|
||||
stop=None
|
||||
)
|
||||
if self._config['app']['llm_mode'] == 'ollama':
|
||||
llm = ChatOllama(
|
||||
base_url=self._config['app']['ollama']['url'],
|
||||
model=self._config['app']['ollama']['model_name'],
|
||||
temperature=self._config['app']['ollama']['temperature'],
|
||||
max_tokens=self._config['app']['ollama']['max_tokens'],
|
||||
top_p=self._config['app']['ollama']['top_p'],
|
||||
keep_alive=self._config['app']['ollama']['keep_alive'],
|
||||
stop=None
|
||||
)
|
||||
elif self._config['app']['llm_mode'] == 'gemini':
|
||||
llm = ChatGoogleGenerativeAI(
|
||||
model=self._config['app']['gemini']['model_name'],
|
||||
temperature=self._config['app']['gemini']['temperature'],
|
||||
max_tokens=self._config['app']['gemini']['max_tokens']
|
||||
)
|
||||
else:
|
||||
raise ValueError(f'Unsupported llm model: {self._config['app']['llm_mode']}')
|
||||
prompt = PromptTemplate(
|
||||
input_variables=['input_text', 'source_lang', 'target_lang', 'description'],
|
||||
template=template
|
||||
|
||||
Reference in New Issue
Block a user