Spaces:
Running
Running
Add Llama 3 LLMs via Together AI
Browse files- app.py +1 -1
- global_config.py +14 -1
- helpers/llm_helper.py +14 -0
- requirements.txt +1 -0
app.py
CHANGED
@@ -170,7 +170,7 @@ with st.sidebar:
|
|
170 |
api_key_token = st.text_input(
|
171 |
label=(
|
172 |
'3: Paste your API key/access token:\n\n'
|
173 |
-
'*Mandatory* for Cohere
|
174 |
' *Optional* for HF Mistral LLMs but still encouraged.\n\n'
|
175 |
),
|
176 |
type='password',
|
|
|
170 |
api_key_token = st.text_input(
|
171 |
label=(
|
172 |
'3: Paste your API key/access token:\n\n'
|
173 |
+
'*Mandatory* for Cohere, Google Gemini, and Together AI providers.'
|
174 |
' *Optional* for HF Mistral LLMs but still encouraged.\n\n'
|
175 |
),
|
176 |
type='password',
|
global_config.py
CHANGED
@@ -21,11 +21,13 @@ class GlobalConfig:
|
|
21 |
PROVIDER_GOOGLE_GEMINI = 'gg'
|
22 |
PROVIDER_HUGGING_FACE = 'hf'
|
23 |
PROVIDER_OLLAMA = 'ol'
|
|
|
24 |
VALID_PROVIDERS = {
|
25 |
PROVIDER_COHERE,
|
26 |
PROVIDER_GOOGLE_GEMINI,
|
27 |
PROVIDER_HUGGING_FACE,
|
28 |
-
PROVIDER_OLLAMA
|
|
|
29 |
}
|
30 |
VALID_MODELS = {
|
31 |
'[co]command-r-08-2024': {
|
@@ -53,12 +55,23 @@ class GlobalConfig:
|
|
53 |
'max_new_tokens': 10240,
|
54 |
'paid': False,
|
55 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
}
|
57 |
LLM_PROVIDER_HELP = (
|
58 |
'LLM provider codes:\n\n'
|
59 |
'- **[co]**: Cohere\n'
|
60 |
'- **[gg]**: Google Gemini API\n'
|
61 |
'- **[hf]**: Hugging Face Inference API\n'
|
|
|
62 |
)
|
63 |
DEFAULT_MODEL_INDEX = 3
|
64 |
LLM_MODEL_TEMPERATURE = 0.2
|
|
|
21 |
PROVIDER_GOOGLE_GEMINI = 'gg'
|
22 |
PROVIDER_HUGGING_FACE = 'hf'
|
23 |
PROVIDER_OLLAMA = 'ol'
|
24 |
+
PROVIDER_TOGETHER_AI = 'to'
|
25 |
VALID_PROVIDERS = {
|
26 |
PROVIDER_COHERE,
|
27 |
PROVIDER_GOOGLE_GEMINI,
|
28 |
PROVIDER_HUGGING_FACE,
|
29 |
+
PROVIDER_OLLAMA,
|
30 |
+
PROVIDER_TOGETHER_AI
|
31 |
}
|
32 |
VALID_MODELS = {
|
33 |
'[co]command-r-08-2024': {
|
|
|
55 |
'max_new_tokens': 10240,
|
56 |
'paid': False,
|
57 |
},
|
58 |
+
'[to]meta-llama/Llama-3.3-70B-Instruct-Turbo': {
|
59 |
+
'description': 'detailed, slower',
|
60 |
+
'max_new_tokens': 4096,
|
61 |
+
'paid': True,
|
62 |
+
},
|
63 |
+
'[to]meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo-128K': {
|
64 |
+
'description': 'shorter, faster',
|
65 |
+
'max_new_tokens': 4096,
|
66 |
+
'paid': True,
|
67 |
+
},
|
68 |
}
|
69 |
LLM_PROVIDER_HELP = (
|
70 |
'LLM provider codes:\n\n'
|
71 |
'- **[co]**: Cohere\n'
|
72 |
'- **[gg]**: Google Gemini API\n'
|
73 |
'- **[hf]**: Hugging Face Inference API\n'
|
74 |
+
'- **[to]**: Together AI\n'
|
75 |
)
|
76 |
DEFAULT_MODEL_INDEX = 3
|
77 |
LLM_MODEL_TEMPERATURE = 0.2
|
helpers/llm_helper.py
CHANGED
@@ -84,6 +84,7 @@ def is_valid_llm_provider_model(provider: str, model: str, api_key: str) -> bool
|
|
84 |
if provider in [
|
85 |
GlobalConfig.PROVIDER_GOOGLE_GEMINI,
|
86 |
GlobalConfig.PROVIDER_COHERE,
|
|
|
87 |
] and not api_key:
|
88 |
return False
|
89 |
|
@@ -161,6 +162,19 @@ def get_langchain_llm(
|
|
161 |
streaming=True,
|
162 |
)
|
163 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
if provider == GlobalConfig.PROVIDER_OLLAMA:
|
165 |
from langchain_ollama.llms import OllamaLLM
|
166 |
|
|
|
84 |
if provider in [
|
85 |
GlobalConfig.PROVIDER_GOOGLE_GEMINI,
|
86 |
GlobalConfig.PROVIDER_COHERE,
|
87 |
+
GlobalConfig.PROVIDER_TOGETHER_AI,
|
88 |
] and not api_key:
|
89 |
return False
|
90 |
|
|
|
162 |
streaming=True,
|
163 |
)
|
164 |
|
165 |
+
if provider == GlobalConfig.PROVIDER_TOGETHER_AI:
|
166 |
+
from langchain_together import Together
|
167 |
+
|
168 |
+
logger.debug('Getting LLM via Together AI: %s', model)
|
169 |
+
return Together(
|
170 |
+
model=model,
|
171 |
+
temperature=GlobalConfig.LLM_MODEL_TEMPERATURE,
|
172 |
+
together_api_key=api_key,
|
173 |
+
max_tokens=max_new_tokens,
|
174 |
+
top_k=40,
|
175 |
+
top_p=0.90,
|
176 |
+
)
|
177 |
+
|
178 |
if provider == GlobalConfig.PROVIDER_OLLAMA:
|
179 |
from langchain_ollama.llms import OllamaLLM
|
180 |
|
requirements.txt
CHANGED
@@ -12,6 +12,7 @@ langchain-core~=0.3.0
|
|
12 |
langchain-community==0.3.0
|
13 |
langchain-google-genai==2.0.6
|
14 |
langchain-cohere==0.3.3
|
|
|
15 |
langchain-ollama==0.2.1
|
16 |
streamlit~=1.38.0
|
17 |
|
|
|
12 |
langchain-community==0.3.0
|
13 |
langchain-google-genai==2.0.6
|
14 |
langchain-cohere==0.3.3
|
15 |
+
langchain-together==0.3.0
|
16 |
langchain-ollama==0.2.1
|
17 |
streamlit~=1.38.0
|
18 |
|