Spaces:
Running
Running
ehristoforu
commited on
Commit
β’
bb1671d
1
Parent(s):
3a1b429
Upload 5 files
Browse files- .env.local.template +431 -0
- .gitattributes +0 -1
- Dockerfile +159 -0
- README.md +9 -6
- entrypoint.sh.template +19 -0
.env.local.template
ADDED
@@ -0,0 +1,431 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Use .env.local to change these variables
|
2 |
+
# DO NOT EDIT THIS FILE WITH SENSITIVE DATA
|
3 |
+
|
4 |
+
MONGODB_URL=${MONGODB_URL}
|
5 |
+
MONGODB_DB_NAME=chat-ui
|
6 |
+
MONGODB_DIRECT_CONNECTION=false
|
7 |
+
|
8 |
+
|
9 |
+
COOKIE_NAME=HuggingGPT
|
10 |
+
HF_ACCESS_TOKEN=#hf_<token> from from https://huggingface.co/settings/token
|
11 |
+
|
12 |
+
# used to activate search with web functionality. disabled if not defined
|
13 |
+
SERPAPI_KEY=#your serpapi key here
|
14 |
+
|
15 |
+
# Parameters to enable "Sign in with HF"
|
16 |
+
OPENID_CONFIG=`{
|
17 |
+
PROVIDER_URL: "https://huggingface.co",
|
18 |
+
CLIENT_ID: "${OPENID_CLIENT_ID}",
|
19 |
+
CLIENT_SECRET: "${OPENID_CLIENT_SECRET}"
|
20 |
+
}`
|
21 |
+
|
22 |
+
|
23 |
+
|
24 |
+
MODELS=`[
|
25 |
+
{
|
26 |
+
"name": "gpt-3.5-turbo",
|
27 |
+
"displayName": "GPT-3.5-Turbo",
|
28 |
+
"logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/0/04/ChatGPT_logo.svg/1200px-ChatGPT_logo.svg.png",
|
29 |
+
"modelUrl": "https://platform.openai.com/docs/models/gpt-3-5-turbo",
|
30 |
+
"websiteUrl": "https://openai.com/chatgpt",
|
31 |
+
"parameters": {
|
32 |
+
"temperature": 0.3,
|
33 |
+
"top_p": 0.8,
|
34 |
+
"repetition_penalty": 0.0,
|
35 |
+
"max_tokens": 1024,
|
36 |
+
"top_k": 50,
|
37 |
+
"truncate": 1000,
|
38 |
+
"max_new_tokens": 2048
|
39 |
+
},
|
40 |
+
"endpoints": [{
|
41 |
+
"type" : "openai",
|
42 |
+
"apiKey": "${OPENAI_API_KEY}",
|
43 |
+
"baseURL": "${ENDPOINT}"
|
44 |
+
}]
|
45 |
+
},
|
46 |
+
{
|
47 |
+
"name": "gpt-3.5-turbo-0613",
|
48 |
+
"displayName": "GPT-3.5-Turbo-0613",
|
49 |
+
"logoUrl": "data:image/png;base64,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",
|
50 |
+
"modelUrl": "https://platform.openai.com/docs/models/gpt-3-5-turbo",
|
51 |
+
"websiteUrl": "https://openai.com/chatgpt",
|
52 |
+
"parameters": {
|
53 |
+
"temperature": 0.3,
|
54 |
+
"top_p": 0.8,
|
55 |
+
"repetition_penalty": 0.0,
|
56 |
+
"max_tokens": 1024,
|
57 |
+
"top_k": 50,
|
58 |
+
"truncate": 1000,
|
59 |
+
"max_new_tokens": 2048
|
60 |
+
},
|
61 |
+
"endpoints": [{
|
62 |
+
"type" : "openai",
|
63 |
+
"apiKey": "${OPENAI_API_KEY}",
|
64 |
+
"baseURL": "${ENDPOINT}"
|
65 |
+
}]
|
66 |
+
},
|
67 |
+
{
|
68 |
+
"name": "gpt-3.5-turbo-0125",
|
69 |
+
"displayName": "GPT-3.5-Turbo-0125",
|
70 |
+
"logoUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRko-LT_4JHX2nVrtmqa4rNoVY5nZYT8IlKRw&s",
|
71 |
+
"modelUrl": "https://platform.openai.com/docs/models/gpt-3-5-turbo",
|
72 |
+
"websiteUrl": "https://openai.com/chatgpt",
|
73 |
+
"parameters": {
|
74 |
+
"temperature": 0.3,
|
75 |
+
"top_p": 0.8,
|
76 |
+
"repetition_penalty": 0.0,
|
77 |
+
"max_tokens": 1024,
|
78 |
+
"top_k": 50,
|
79 |
+
"truncate": 1000,
|
80 |
+
"max_new_tokens": 2048
|
81 |
+
},
|
82 |
+
"endpoints": [{
|
83 |
+
"type" : "openai",
|
84 |
+
"apiKey": "${FREEGPT_API_KEY}",
|
85 |
+
"baseURL": "https://free.gpt.ge/v1"
|
86 |
+
}]
|
87 |
+
},
|
88 |
+
{
|
89 |
+
"name": "gpt-3.5-turbo-1106",
|
90 |
+
"displayName": "GPT-3.5-Turbo-1106",
|
91 |
+
"logoUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQR5OxjPZIjkJcJYBERpy1as9vm_eOrohdyEw&s",
|
92 |
+
"modelUrl": "https://platform.openai.com/docs/models/gpt-3-5-turbo",
|
93 |
+
"websiteUrl": "https://openai.com/chatgpt",
|
94 |
+
"parameters": {
|
95 |
+
"temperature": 0.3,
|
96 |
+
"top_p": 0.8,
|
97 |
+
"repetition_penalty": 0.0,
|
98 |
+
"max_tokens": 1024,
|
99 |
+
"top_k": 50,
|
100 |
+
"truncate": 1000,
|
101 |
+
"max_new_tokens": 2048
|
102 |
+
},
|
103 |
+
"endpoints": [{
|
104 |
+
"type" : "openai",
|
105 |
+
"apiKey": "${FREEGPT_API_KEY}",
|
106 |
+
"baseURL": "https://free.gpt.ge/v1"
|
107 |
+
}]
|
108 |
+
},
|
109 |
+
{
|
110 |
+
"name": "net-gpt-3.5-turbo",
|
111 |
+
"displayName": "GPT-3.5-Turbo-Browsering",
|
112 |
+
"logoUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSOFDjKWYHuKk1c4MSfizq5pdzrohJnTfrSbA&s",
|
113 |
+
"modelUrl": "https://platform.openai.com/docs/models/gpt-3-5-turbo",
|
114 |
+
"websiteUrl": "https://openai.com/chatgpt",
|
115 |
+
"parameters": {
|
116 |
+
"temperature": 0.3,
|
117 |
+
"top_p": 0.8,
|
118 |
+
"repetition_penalty": 0.0,
|
119 |
+
"max_tokens": 1024,
|
120 |
+
"top_k": 50,
|
121 |
+
"truncate": 1000,
|
122 |
+
"max_new_tokens": 2048
|
123 |
+
},
|
124 |
+
"endpoints": [{
|
125 |
+
"type" : "openai",
|
126 |
+
"apiKey": "${FREEGPT_API_KEY}",
|
127 |
+
"baseURL": "https://free.gpt.ge/v1"
|
128 |
+
}]
|
129 |
+
},
|
130 |
+
{
|
131 |
+
"name": "gpt-4-turbo",
|
132 |
+
"displayName": "Gemini Pro",
|
133 |
+
"logoUrl": "data:image/png;base64,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",
|
134 |
+
"modelUrl": "https://gemini.google.com",
|
135 |
+
"websiteUrl": "https://blog.google/technology/ai/google-gemini-ai",
|
136 |
+
"parameters": {
|
137 |
+
"temperature": 0.3,
|
138 |
+
"top_p": 0.8,
|
139 |
+
"repetition_penalty": 0.0,
|
140 |
+
"max_tokens": 1024,
|
141 |
+
"top_k": 50,
|
142 |
+
"truncate": 1000,
|
143 |
+
"max_new_tokens": 2048
|
144 |
+
},
|
145 |
+
"endpoints": [{
|
146 |
+
"type" : "openai",
|
147 |
+
"apiKey": "${GEMINI_API_KEY}",
|
148 |
+
"baseURL": "https://gemini-openai-proxy.deno.dev/v1"
|
149 |
+
}]
|
150 |
+
},
|
151 |
+
{
|
152 |
+
"name": "claude-3-sonnet",
|
153 |
+
"displayName": "Claude-3-Sonnet",
|
154 |
+
"modelUrl": "https://claude.ai",
|
155 |
+
"websiteUrl": "https://claude.ai",
|
156 |
+
"parameters": {
|
157 |
+
"temperature": 0.3,
|
158 |
+
"top_p": 0.8,
|
159 |
+
"repetition_penalty": 0.0,
|
160 |
+
"max_tokens": 1024,
|
161 |
+
"top_k": 50,
|
162 |
+
"truncate": 1000,
|
163 |
+
"max_new_tokens": 2048
|
164 |
+
},
|
165 |
+
"endpoints": [{
|
166 |
+
"type" : "openai",
|
167 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
168 |
+
"baseURL": "https://visioncraft.top/v1"
|
169 |
+
}]
|
170 |
+
},
|
171 |
+
{
|
172 |
+
"name": "claude-3-haiku",
|
173 |
+
"displayName": "Claude-3-Haiku",
|
174 |
+
"modelUrl": "https://claude.ai",
|
175 |
+
"websiteUrl": "https://claude.ai",
|
176 |
+
"parameters": {
|
177 |
+
"temperature": 0.3,
|
178 |
+
"top_p": 0.8,
|
179 |
+
"repetition_penalty": 0.0,
|
180 |
+
"max_tokens": 1024,
|
181 |
+
"top_k": 50,
|
182 |
+
"truncate": 1000,
|
183 |
+
"max_new_tokens": 2048
|
184 |
+
},
|
185 |
+
"endpoints": [{
|
186 |
+
"type" : "openai",
|
187 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
188 |
+
"baseURL": "https://visioncraft.top/v1"
|
189 |
+
}]
|
190 |
+
},
|
191 |
+
{
|
192 |
+
"name": "claude-instant-100k",
|
193 |
+
"displayName": "Claude-Instant-100K",
|
194 |
+
"modelUrl": "https://claude.ai",
|
195 |
+
"websiteUrl": "https://claude.ai",
|
196 |
+
"parameters": {
|
197 |
+
"temperature": 0.3,
|
198 |
+
"top_p": 0.8,
|
199 |
+
"repetition_penalty": 0.0,
|
200 |
+
"max_tokens": 1024,
|
201 |
+
"top_k": 50,
|
202 |
+
"truncate": 1000,
|
203 |
+
"max_new_tokens": 2048
|
204 |
+
},
|
205 |
+
"endpoints": [{
|
206 |
+
"type" : "openai",
|
207 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
208 |
+
"baseURL": "https://visioncraft.top/v1"
|
209 |
+
}]
|
210 |
+
},
|
211 |
+
{
|
212 |
+
"name": "claude-instant",
|
213 |
+
"displayName": "Claude-Instant",
|
214 |
+
"modelUrl": "https://claude.ai",
|
215 |
+
"websiteUrl": "https://claude.ai",
|
216 |
+
"parameters": {
|
217 |
+
"temperature": 0.3,
|
218 |
+
"top_p": 0.8,
|
219 |
+
"repetition_penalty": 0.0,
|
220 |
+
"max_tokens": 1024,
|
221 |
+
"top_k": 50,
|
222 |
+
"truncate": 1000,
|
223 |
+
"max_new_tokens": 2048
|
224 |
+
},
|
225 |
+
"endpoints": [{
|
226 |
+
"type" : "openai",
|
227 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
228 |
+
"baseURL": "https://visioncraft.top/v1"
|
229 |
+
}]
|
230 |
+
},
|
231 |
+
{
|
232 |
+
"name": "dbrx-instruct",
|
233 |
+
"displayName": "DBRX-Instruct",
|
234 |
+
"modelUrl": "https://huggingface.co/databricks/dbrx-instruct",
|
235 |
+
"websiteUrl": "https://www.databricks.com/",
|
236 |
+
"parameters": {
|
237 |
+
"temperature": 0.3,
|
238 |
+
"top_p": 0.8,
|
239 |
+
"repetition_penalty": 0.0,
|
240 |
+
"max_tokens": 1024,
|
241 |
+
"top_k": 50,
|
242 |
+
"truncate": 1000,
|
243 |
+
"max_new_tokens": 2048
|
244 |
+
},
|
245 |
+
"endpoints": [{
|
246 |
+
"type" : "openai",
|
247 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
248 |
+
"baseURL": "https://visioncraft.top/v1"
|
249 |
+
}]
|
250 |
+
},
|
251 |
+
{
|
252 |
+
"name": "llama3-70b-8192",
|
253 |
+
"displayName": "Llama3-70B",
|
254 |
+
"description": "Generation over generation, Meta Llama 3 demonstrates state-of-the-art performance on a wide range of industry benchmarks and offers new capabilities, including improved reasoning.",
|
255 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/meta-logo.png",
|
256 |
+
"modelUrl": "https://huggingface.co/meta-llama/Meta-Llama-3-70B",
|
257 |
+
"websiteUrl": "https://llama.meta.com/llama3",
|
258 |
+
"parameters": {
|
259 |
+
"temperature": 0.3,
|
260 |
+
"top_p": 0.8,
|
261 |
+
"repetition_penalty": 0.0,
|
262 |
+
"max_tokens": 1024,
|
263 |
+
"top_k": 50,
|
264 |
+
"truncate": 1000,
|
265 |
+
"max_new_tokens": 2048
|
266 |
+
},
|
267 |
+
"endpoints": [{
|
268 |
+
"type" : "openai",
|
269 |
+
"apiKey": "${GROQ_API_KEY}",
|
270 |
+
"baseURL": "https://api.groq.com/openai/v1"
|
271 |
+
}]
|
272 |
+
},
|
273 |
+
{
|
274 |
+
"name": "llama3-8b-8192",
|
275 |
+
"displayName": "Llama3-8B",
|
276 |
+
"description": "Generation over generation, Meta Llama 3 demonstrates state-of-the-art performance on a wide range of industry benchmarks and offers new capabilities, including improved reasoning.",
|
277 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/meta-logo.png",
|
278 |
+
"modelUrl": "https://huggingface.co/meta-llama/Meta-Llama-3-8B",
|
279 |
+
"websiteUrl": "https://llama.meta.com/llama3",
|
280 |
+
"parameters": {
|
281 |
+
"temperature": 0.3,
|
282 |
+
"top_p": 0.8,
|
283 |
+
"repetition_penalty": 0.0,
|
284 |
+
"max_tokens": 1024,
|
285 |
+
"top_k": 50,
|
286 |
+
"truncate": 1000,
|
287 |
+
"max_new_tokens": 2048
|
288 |
+
},
|
289 |
+
"endpoints": [{
|
290 |
+
"type" : "openai",
|
291 |
+
"apiKey": "${GROQ_API_KEY}",
|
292 |
+
"baseURL": "https://api.groq.com/openai/v1"
|
293 |
+
}]
|
294 |
+
},
|
295 |
+
{
|
296 |
+
"name": "llama2-70b-4096",
|
297 |
+
"displayName": "Llama2-70B",
|
298 |
+
"description": "Generation over generation, Meta Llama 2 demonstrates state-of-the-art performance on a wide range of industry benchmarks and offers new capabilities, including improved reasoning.",
|
299 |
+
"logoUrl": "https://pl-public-data.s3.amazonaws.com/assets_lightning/Lit_LLaMA_Badge3x.png",
|
300 |
+
"modelUrl": "https://huggingface.co/meta-llama/Llama-2-70b",
|
301 |
+
"websiteUrl": "https://llama.meta.com/llama2",
|
302 |
+
"parameters": {
|
303 |
+
"temperature": 0.3,
|
304 |
+
"top_p": 0.8,
|
305 |
+
"repetition_penalty": 0.0,
|
306 |
+
"max_tokens": 1024,
|
307 |
+
"top_k": 50,
|
308 |
+
"truncate": 1000,
|
309 |
+
"max_new_tokens": 2048
|
310 |
+
},
|
311 |
+
"endpoints": [{
|
312 |
+
"type" : "openai",
|
313 |
+
"apiKey": "${GROQ_API_KEY}",
|
314 |
+
"baseURL": "https://api.groq.com/openai/v1"
|
315 |
+
}]
|
316 |
+
},
|
317 |
+
{
|
318 |
+
"name": "mixtral-8x7b-32768",
|
319 |
+
"displayName": "Mixtral-8x7B",
|
320 |
+
"description" : "The latest MoE model from Mistral AI! 8x7B and outperforms Llama 2 70B in most benchmarks.",
|
321 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/mistral-logo.png",
|
322 |
+
"websiteUrl" : "https://mistral.ai/news/mixtral-of-experts",
|
323 |
+
"modelUrl": "https://huggingface.co/mistralai/Mixtral-8x7B-v0.1",
|
324 |
+
"parameters": {
|
325 |
+
"temperature": 0.3,
|
326 |
+
"top_p": 0.8,
|
327 |
+
"repetition_penalty": 0.0,
|
328 |
+
"max_tokens": 1024,
|
329 |
+
"top_k": 50,
|
330 |
+
"truncate": 1000,
|
331 |
+
"max_new_tokens": 2048
|
332 |
+
},
|
333 |
+
"endpoints": [{
|
334 |
+
"type" : "openai",
|
335 |
+
"apiKey": "${GROQ_API_KEY}",
|
336 |
+
"baseURL": "https://api.groq.com/openai/v1"
|
337 |
+
}]
|
338 |
+
},
|
339 |
+
{
|
340 |
+
"name": "Mixtral-8x22B-Instruct-v0.1",
|
341 |
+
"displayName": "Mixtral-8x22B",
|
342 |
+
"description" : "The latest MoE model from Mistral AI! 8x22B and outperforms Llama 3 8B in most benchmarks.",
|
343 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/mistral-logo.png",
|
344 |
+
"websiteUrl" : "https://mistral.ai/news/mixtral-of-experts",
|
345 |
+
"modelUrl": "https://huggingface.co/mistralai/Mixtral-8x22B-v0.1",
|
346 |
+
"parameters": {
|
347 |
+
"temperature": 0.3,
|
348 |
+
"top_p": 0.8,
|
349 |
+
"repetition_penalty": 0.0,
|
350 |
+
"max_tokens": 1024,
|
351 |
+
"top_k": 50,
|
352 |
+
"truncate": 1000,
|
353 |
+
"max_new_tokens": 2048
|
354 |
+
},
|
355 |
+
"endpoints": [{
|
356 |
+
"type" : "openai",
|
357 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
358 |
+
"baseURL": "https://visioncraft.top/v1"
|
359 |
+
}]
|
360 |
+
},
|
361 |
+
{
|
362 |
+
"name": "zephyr-orpo-141b-A35b-v0.1",
|
363 |
+
"displayName": "Zephyr-Orpo-141B-A35B"
|
364 |
+
"description": "Zephyr 141B-A35B is a fine-tuned version of Mistral 8x22B, trained using ORPO, a novel alignment algorithm.",
|
365 |
+
"modelUrl": "https://huggingface.co/HuggingFaceH4/zephyr-orpo-141b-A35b-v0.1",
|
366 |
+
"websiteUrl": "https://huggingface.co/HuggingFaceH4/zephyr-orpo-141b-A35b-v0.1",
|
367 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/zephyr-logo.png",
|
368 |
+
"parameters": {
|
369 |
+
"temperature": 0.3,
|
370 |
+
"top_p": 0.8,
|
371 |
+
"repetition_penalty": 0.0,
|
372 |
+
"max_tokens": 1024,
|
373 |
+
"top_k": 50,
|
374 |
+
"truncate": 1000,
|
375 |
+
"max_new_tokens": 2048
|
376 |
+
},
|
377 |
+
"endpoints": [{
|
378 |
+
"type" : "openai",
|
379 |
+
"apiKey": "${VISIONCRAFT_API_KEY}",
|
380 |
+
"baseURL": "https://visioncraft.top/v1"
|
381 |
+
}]
|
382 |
+
},
|
383 |
+
{
|
384 |
+
"name": "gemma-7b-it",
|
385 |
+
"displayName": "Gemma-7B-IT",
|
386 |
+
"description": "Gemma 7B 1.1 is the latest release in the Gemma family of lightweight models built by Google, trained using a novel RLHF method.",
|
387 |
+
"websiteUrl" : "https://blog.google/technology/developers/gemma-open-models/",
|
388 |
+
"logoUrl": "https://huggingface.co/datasets/huggingchat/models-logo/resolve/main/google-logo.png",
|
389 |
+
"modelUrl": "https://huggingface.co/google/gemma-1.1-7b-it",
|
390 |
+
"parameters": {
|
391 |
+
"temperature": 0.3,
|
392 |
+
"top_p": 0.8,
|
393 |
+
"repetition_penalty": 0.0,
|
394 |
+
"max_tokens": 1024,
|
395 |
+
"top_k": 50,
|
396 |
+
"truncate": 1000,
|
397 |
+
"max_new_tokens": 2048
|
398 |
+
},
|
399 |
+
"endpoints": [{
|
400 |
+
"type" : "openai",
|
401 |
+
"apiKey": "${GROQ_API_KEY}",
|
402 |
+
"baseURL": "https://api.groq.com/openai/v1"
|
403 |
+
}]
|
404 |
+
}
|
405 |
+
]`
|
406 |
+
|
407 |
+
OLD_MODELS=`[]`# any removed models, `{ name: string, displayName?: string, id?: string }`
|
408 |
+
|
409 |
+
PUBLIC_ORIGIN=${SPACE_HOST}
|
410 |
+
PUBLIC_SHARE_PREFIX=${SPACE_HOST}/r
|
411 |
+
PUBLIC_GOOGLE_ANALYTICS_ID=#G-XXXXXXXX / Leave empty to disable
|
412 |
+
PUBLIC_DEPRECATED_GOOGLE_ANALYTICS_ID=#UA-XXXXXXXX-X / Leave empty to disable
|
413 |
+
PUBLIC_ANNOUNCEMENT_BANNERS=`[
|
414 |
+
{
|
415 |
+
"title": "π¦Ύ Claude-3-Sonnet is now available for free!",
|
416 |
+
"linkTitle": "try it",
|
417 |
+
"linkHref": "/chat?model=claude-3-sonnet"
|
418 |
+
}
|
419 |
+
]`
|
420 |
+
|
421 |
+
PARQUET_EXPORT_DATASET=
|
422 |
+
PARQUET_EXPORT_HF_TOKEN=
|
423 |
+
PARQUET_EXPORT_SECRET=
|
424 |
+
|
425 |
+
PUBLIC_APP_NAME=${APP_NAME} # name used as title throughout the app
|
426 |
+
PUBLIC_APP_DESCRIPTION=We provide free access to the latest AI models. There is a possibility that some models may be temporarily unavailable, in which case please select another model.
|
427 |
+
PUBLIC_APP_ASSETS=chatui # used to find logos & favicons in static/$PUBLIC_APP_ASSETS
|
428 |
+
PUBLIC_APP_COLOR=${APP_COLOR} # can be any of tailwind colors: https://tailwindcss.com/docs/customizing-colors#default-color-palette
|
429 |
+
PUBLIC_APP_DATA_SHARING=1#set to 1 to enable disclaimers & options about data sharing
|
430 |
+
PUBLIC_APP_DATA_DISCLAIMER1=#set to 1 to enable disclaimers about model outputs
|
431 |
+
PUBLIC_APP_DISCLAIMER_MESSAGE="Disclaimer: AI is an area of active research with known problems such as biased generation and misinformation. Do not use this application for high-stakes decisions or advice. Do not insert your personal data, especially sensitive, like health data."
|
.gitattributes
CHANGED
@@ -25,7 +25,6 @@
|
|
25 |
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
28 |
-
*.tar filter=lfs diff=lfs merge=lfs -text
|
29 |
*.tflite filter=lfs diff=lfs merge=lfs -text
|
30 |
*.tgz filter=lfs diff=lfs merge=lfs -text
|
31 |
*.wasm filter=lfs diff=lfs merge=lfs -text
|
|
|
25 |
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
|
|
28 |
*.tflite filter=lfs diff=lfs merge=lfs -text
|
29 |
*.tgz filter=lfs diff=lfs merge=lfs -text
|
30 |
*.wasm filter=lfs diff=lfs merge=lfs -text
|
Dockerfile
ADDED
@@ -0,0 +1,159 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
ARG MODEL_NAME
|
2 |
+
ARG MODEL_PARAMS
|
3 |
+
ARG MODEL_PROMPT_TEMPLATE
|
4 |
+
ARG APP_COLOR
|
5 |
+
ARG APP_NAME
|
6 |
+
|
7 |
+
|
8 |
+
FROM node:20 as chatui-builder
|
9 |
+
ARG MODEL_NAME
|
10 |
+
ARG MODEL_PARAMS
|
11 |
+
ARG APP_COLOR
|
12 |
+
ARG APP_NAME
|
13 |
+
ARG MODEL_PROMPT_TEMPLATE
|
14 |
+
|
15 |
+
WORKDIR /app
|
16 |
+
|
17 |
+
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
18 |
+
git gettext && \
|
19 |
+
rm -rf /var/lib/apt/lists/*
|
20 |
+
|
21 |
+
|
22 |
+
RUN git clone https://github.com/fredhu21/chat-ui.git
|
23 |
+
|
24 |
+
WORKDIR /app/chat-ui
|
25 |
+
|
26 |
+
|
27 |
+
COPY .env.local.template .env.local.template
|
28 |
+
|
29 |
+
RUN mkdir defaults
|
30 |
+
ADD defaults /defaults
|
31 |
+
RUN chmod -R 777 /defaults
|
32 |
+
|
33 |
+
|
34 |
+
RUN --mount=type=secret,id=OPENAI_API_KEY,mode=0444 \
|
35 |
+
OPENAI_API_KEY=$(cat /run/secrets/OPENAI_API_KEY) && export OPENAI_API_KEY && echo "${OPENAI_API_KEY}" >> "/defaults/.openai.key" && cat /defaults/.openai.key
|
36 |
+
|
37 |
+
|
38 |
+
RUN --mount=type=secret,id=ENDPOINT,mode=0444 \
|
39 |
+
ENDPOINT=$(cat /run/secrets/ENDPOINT) && export ENDPOINT && echo "${ENDPOINT}" >> "/defaults/.endpoint" && cat /defaults/.endpoint
|
40 |
+
|
41 |
+
RUN --mount=type=secret,id=GEMINI_API_KEY,mode=0444 \
|
42 |
+
ENDPOINT=$(cat /run/secrets/GEMINI_API_KEY) && export GEMINI_API_KEY && echo "${GEMINI_API_KEY}" >> "/defaults/.gemini.key" && cat /defaults/.gemini.key
|
43 |
+
|
44 |
+
RUN --mount=type=secret,id=FREEGPT_API_KEY,mode=0444 \
|
45 |
+
ENDPOINT=$(cat /run/secrets/FREEGPT_API_KEY) && export FREEGPT_API_KEY && echo "${FREEGPT_API_KEY}" >> "/defaults/.freegpt.key" && cat /defaults/.freegpt.key
|
46 |
+
|
47 |
+
RUN --mount=type=secret,id=GROQ_API_KEY,mode=0444 \
|
48 |
+
ENDPOINT=$(cat /run/secrets/GROQ_API_KEY) && export GROQ_API_KEY && echo "${GROQ_API_KEY}" >> "/defaults/.groq.key" && cat /defaults/.groq.key
|
49 |
+
|
50 |
+
RUN --mount=type=secret,id=VISIONCRAFT_API_KEY,mode=0444 \
|
51 |
+
ENDPOINT=$(cat /run/secrets/VISIONCRAFT_API_KEY) && export VISIONCRAFT_API_KEY && echo "${VISIONCRAFT_API_KEY}" >> "/defaults/.visioncraft.key" && cat /defaults/.visioncraft.key
|
52 |
+
|
53 |
+
RUN --mount=type=secret,id=OPENID_CLIENT_ID,mode=0444 \
|
54 |
+
ENDPOINT=$(cat /run/secrets/OPENID_CLIENT_ID) && export OPENID_CLIENT_ID && echo "${OPENID_CLIENT_ID}" >> "/defaults/.openid.client_id" && cat /defaults/.openid.client_id
|
55 |
+
|
56 |
+
RUN --mount=type=secret,id=OPENID_CLIENT_SECRET,mode=0444 \
|
57 |
+
ENDPOINT=$(cat /run/secrets/OPENID_CLIENT_SECRET) && export OPENID_CLIENT_SECRET && echo "${OPENID_CLIENT_SECRET}" >> "/defaults/.openid.client_secret" && cat /defaults/.openid.client_secret
|
58 |
+
|
59 |
+
|
60 |
+
RUN --mount=type=secret,id=MONGODB_URL,mode=0444 \
|
61 |
+
MODEL_NAME="${MODEL_NAME:="$(cat /defaults/MODEL_NAME)"}" && export MODEL_NAME \
|
62 |
+
&& MODEL_PARAMS="${MODEL_PARAMS:="$(cat /defaults/MODEL_PARAMS)"}" && export MODEL_PARAMS \
|
63 |
+
&& MODEL_PROMPT_TEMPLATE="${MODEL_PROMPT_TEMPLATE:="$(cat /defaults/MODEL_PROMPT_TEMPLATE)"}" && export MODEL_PROMPT_TEMPLATE \
|
64 |
+
&& APP_COLOR="${APP_COLOR:="$(cat /defaults/APP_COLOR)"}" && export APP_COLOR \
|
65 |
+
&& APP_NAME="${APP_NAME:="$(cat /defaults/APP_NAME)"}" && export APP_NAME \
|
66 |
+
&& MONGODB_URL=$(cat /run/secrets/MONGODB_URL || cat /defaults/MONGODB_URL) && export MONGODB_URL && \
|
67 |
+
echo "${MONGODB_URL}" && OPENAI_API_KEY=$(cat /defaults/.openai.key) && export OPENAI_API_KEY && echo "${OPENAI_API_KEY}" \
|
68 |
+
&& ENDPOINT=$(cat /defaults/.endpoint) && export ENDPOINT && echo "${ENDPOINT}" \
|
69 |
+
&& GEMINI_API_KEY=$(cat /defaults/.gemini.key) && export GEMINI_API_KEY && echo "${GEMINI_API_KEY}" \
|
70 |
+
&& FREEGPT_API_KEY=$(cat /defaults/.freegpt.key) && export FREEGPT_API_KEY && echo "${FREEGPT_API_KEY}" \
|
71 |
+
&& GROQ_API_KEY=$(cat /defaults/.groq.key) && export GROQ_API_KEY && echo "${GROQ_API_KEY}" \
|
72 |
+
&& VISIONCRAFT_API_KEY=$(cat /defaults/.visioncraft.key) && export VISIONCRAFT_API_KEY && echo "${VISIONCRAFT_API_KEY}" \
|
73 |
+
&& OPENID_CLIENT_ID=$(cat /defaults/.openid.client_id) && export OPENID_CLIENT_ID && echo "${OPENID_CLIENT_ID}" \
|
74 |
+
&& OPENID_CLIENT_SECRET=$(cat /defaults/.openid.client_secret) && export OPENID_CLIENT_SECRET && echo "${OPENID_CLIENT_SECRET}" \
|
75 |
+
&& envsubst < ".env.local.template" > ".env.local" \
|
76 |
+
&& rm .env.local.template && cat .env.local
|
77 |
+
|
78 |
+
|
79 |
+
|
80 |
+
RUN --mount=type=cache,target=/app/.npm \
|
81 |
+
npm set cache /app/.npm && \
|
82 |
+
npm ci
|
83 |
+
|
84 |
+
RUN npm run build
|
85 |
+
|
86 |
+
FROM ghcr.io/huggingface/text-generation-inference:latest
|
87 |
+
|
88 |
+
ARG MODEL_NAME
|
89 |
+
ARG MODEL_PARAMS
|
90 |
+
ARG MODEL_PROMPT_TEMPLATE
|
91 |
+
ARG APP_COLOR
|
92 |
+
ARG APP_NAME
|
93 |
+
|
94 |
+
ENV TZ=Europe/Paris \
|
95 |
+
PORT=3000
|
96 |
+
|
97 |
+
|
98 |
+
|
99 |
+
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
100 |
+
gnupg \
|
101 |
+
curl \
|
102 |
+
gettext && \
|
103 |
+
rm -rf /var/lib/apt/lists/*
|
104 |
+
COPY entrypoint.sh.template entrypoint.sh.template
|
105 |
+
|
106 |
+
RUN mkdir defaults
|
107 |
+
ADD defaults /defaults
|
108 |
+
RUN chmod -R 777 /defaults
|
109 |
+
|
110 |
+
RUN --mount=type=secret,id=MONGODB_URL,mode=0444 \
|
111 |
+
MODEL_NAME="${MODEL_NAME:="$(cat /defaults/MODEL_NAME)"}" && export MODEL_NAME \
|
112 |
+
&& MODEL_PARAMS="${MODEL_PARAMS:="$(cat /defaults/MODEL_PARAMS)"}" && export MODEL_PARAMS \
|
113 |
+
&& MODEL_PROMPT_TEMPLATE="${MODEL_PROMPT_TEMPLATE:="$(cat /defaults/MODEL_PROMPT_TEMPLATE)"}" && export MODEL_PROMPT_TEMPLATE \
|
114 |
+
&& APP_COLOR="${APP_COLOR:="$(cat /defaults/APP_COLOR)"}" && export APP_COLOR \
|
115 |
+
&& APP_NAME="${APP_NAME:="$(cat /defaults/APP_NAME)"}" && export APP_NAME \
|
116 |
+
&& MONGODB_URL=$(cat /run/secrets/MONGODB_URL > /dev/null | grep '^' || cat /defaults/MONGODB_URL) && export MONGODB_URL && \
|
117 |
+
envsubst < "entrypoint.sh.template" > "entrypoint.sh" \
|
118 |
+
&& rm entrypoint.sh.template
|
119 |
+
|
120 |
+
|
121 |
+
RUN curl -fsSL https://pgp.mongodb.com/server-6.0.asc | \
|
122 |
+
gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg \
|
123 |
+
--dearmor
|
124 |
+
|
125 |
+
RUN echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-6.0.list
|
126 |
+
|
127 |
+
|
128 |
+
|
129 |
+
RUN mkdir -p /data/db
|
130 |
+
RUN chown -R 1000:1000 /data
|
131 |
+
|
132 |
+
RUN curl -fsSL https://deb.nodesource.com/setup_19.x | /bin/bash -
|
133 |
+
|
134 |
+
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
135 |
+
nodejs && \
|
136 |
+
rm -rf /var/lib/apt/lists/*
|
137 |
+
|
138 |
+
RUN mkdir /app
|
139 |
+
RUN chown -R 1000:1000 /app
|
140 |
+
|
141 |
+
RUN useradd -m -u 1000 user
|
142 |
+
|
143 |
+
# Switch to the "user" user
|
144 |
+
USER user
|
145 |
+
|
146 |
+
ENV HOME=/home/user \
|
147 |
+
PATH=/home/user/.local/bin:$PATH
|
148 |
+
|
149 |
+
RUN npm config set prefix /home/user/.local
|
150 |
+
RUN npm install -g pm2
|
151 |
+
|
152 |
+
COPY --from=chatui-builder --chown=1000 /app/chat-ui/node_modules /app/node_modules
|
153 |
+
COPY --from=chatui-builder --chown=1000 /app/chat-ui/package.json /app/package.json
|
154 |
+
COPY --from=chatui-builder --chown=1000 /app/chat-ui/build /app/build
|
155 |
+
|
156 |
+
ENTRYPOINT ["/bin/bash"]
|
157 |
+
CMD ["entrypoint.sh"]
|
158 |
+
|
159 |
+
|
README.md
CHANGED
@@ -1,11 +1,14 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
-
emoji:
|
4 |
-
colorFrom:
|
5 |
-
colorTo:
|
6 |
sdk: docker
|
7 |
-
pinned:
|
|
|
|
|
|
|
8 |
license: apache-2.0
|
9 |
---
|
10 |
|
11 |
-
|
|
|
1 |
---
|
2 |
+
title: Solatium
|
3 |
+
emoji: π
|
4 |
+
colorFrom: indigo
|
5 |
+
colorTo: red
|
6 |
sdk: docker
|
7 |
+
pinned: true
|
8 |
+
app_port: 3000
|
9 |
+
failure_strategy: rollback
|
10 |
+
load_balancing_strategy: random
|
11 |
license: apache-2.0
|
12 |
---
|
13 |
|
14 |
+
# Solatium Chat
|
entrypoint.sh.template
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
|
3 |
+
# Start the local Mongo database
|
4 |
+
#mongod &
|
5 |
+
|
6 |
+
# Start the text-generation-inference process
|
7 |
+
#text-generation-launcher --model-id ${MODEL_NAME} --num-shard 1 --port 8080 --trust-remote-code &
|
8 |
+
|
9 |
+
# Wait for text-generation-inference to start
|
10 |
+
#curl --retry 60 --retry-delay 10 --retry-connrefused http://127.0.0.1:8080/health
|
11 |
+
|
12 |
+
# Start the chat-ui process
|
13 |
+
pm2 start /app/build/index.js -i $CPU_CORES --no-daemon &
|
14 |
+
|
15 |
+
# Wait for any process to exit
|
16 |
+
wait -n
|
17 |
+
|
18 |
+
# Exit with status of process that exited first
|
19 |
+
exit $?
|