Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

.env 8.7 KB

You have to be logged in to leave a comment. Sign In
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
  1. # Use .env.local to change these variables
  2. # DO NOT EDIT THIS FILE WITH SENSITIVE DATA
  3. ### MongoDB ###
  4. MONGODB_URL=#your mongodb URL here, use chat-ui-db image if you don't want to set this
  5. MONGODB_DB_NAME=chat-ui
  6. MONGODB_DIRECT_CONNECTION=false
  7. ### Endpoints config ###
  8. HF_API_ROOT=https://api-inference.huggingface.co/models
  9. # HF_TOKEN is used for a lot of things, not only for inference but also fetching tokenizers, etc.
  10. # We recommend using an HF_TOKEN even if you use a local endpoint.
  11. HF_TOKEN= #get it from https://huggingface.co/settings/token
  12. # API Keys for providers, you will need to specify models in the MODELS section but these keys can be kept secret
  13. OPENAI_API_KEY=#your openai api key here
  14. ANTHROPIC_API_KEY=#your anthropic api key here
  15. CLOUDFLARE_ACCOUNT_ID=#your cloudflare account id here
  16. CLOUDFLARE_API_TOKEN=#your cloudflare api token here
  17. COHERE_API_TOKEN=#your cohere api token here
  18. GOOGLE_GENAI_API_KEY=#your google genai api token here
  19. ### Models ###
  20. ## Models can support many different endpoints, check the documentation for more details
  21. MODELS=`[
  22. {
  23. "name": "NousResearch/Hermes-3-Llama-3.1-8B",
  24. "description": "Nous Research's latest Hermes 3 release in 8B size.",
  25. "promptExamples": [
  26. {
  27. "title": "Write an email from bullet list",
  28. "prompt": "As a restaurant owner, write a professional email to the supplier to get these products every week: \n\n- Wine (x10)\n- Eggs (x24)\n- Bread (x12)"
  29. }, {
  30. "title": "Code a snake game",
  31. "prompt": "Code a basic snake game in python, give explanations for each step."
  32. }, {
  33. "title": "Assist in a task",
  34. "prompt": "How do I make a delicious lemon cheesecake?"
  35. }
  36. ]
  37. }
  38. ]`
  39. ## Text Embedding Models used for websearch
  40. # Default is a model that runs locally on CPU.
  41. TEXT_EMBEDDING_MODELS = `[
  42. {
  43. "name": "Xenova/gte-small",
  44. "displayName": "Xenova/gte-small",
  45. "description": "Local embedding model running on the server.",
  46. "chunkCharLength": 512,
  47. "endpoints": [
  48. { "type": "transformersjs" }
  49. ]
  50. }
  51. ]`
  52. ## Removed models, useful for migrating conversations
  53. # { name: string, displayName?: string, id?: string, transferTo?: string }`
  54. OLD_MODELS=`[]`
  55. ## Task model
  56. # name of the model used for tasks such as summarizing title, creating query, etc.
  57. # if not set, the first model in MODELS will be used
  58. TASK_MODEL=
  59. ### Authentication ###
  60. # Parameters to enable open id login
  61. OPENID_CONFIG=`{
  62. "PROVIDER_URL": "",
  63. "CLIENT_ID": "",
  64. "CLIENT_SECRET": "",
  65. "SCOPES": "",
  66. "NAME_CLAIM": ""
  67. }`
  68. MESSAGES_BEFORE_LOGIN=# how many messages a user can send in a conversation before having to login. set to 0 to force login right away
  69. # if it's defined, only these emails will be allowed to use login
  70. ALLOWED_USER_EMAILS=`[]`
  71. # valid alternative redirect URLs for OAuth, used for HuggingChat apps
  72. ALTERNATIVE_REDIRECT_URLS=`[]`
  73. ### Cookies
  74. # name of the cookie used to store the session
  75. COOKIE_NAME=hf-chat
  76. # specify secure behaviour for cookies
  77. COOKIE_SAMESITE=# can be "lax", "strict", "none" or left empty
  78. COOKIE_SECURE=# set to true to only allow cookies over https
  79. ### Websearch ###
  80. ## API Keys used to activate search with web functionality. websearch is disabled if none are defined. choose one of the following:
  81. YDC_API_KEY=#your docs.you.com api key here
  82. SERPER_API_KEY=#your serper.dev api key here
  83. SERPAPI_KEY=#your serpapi key here
  84. SERPSTACK_API_KEY=#your serpstack api key here
  85. SEARCHAPI_KEY=#your searchapi api key here
  86. USE_LOCAL_WEBSEARCH=#set to true to parse google results yourself, overrides other API keys
  87. SEARXNG_QUERY_URL=# where '<query>' will be replaced with query keywords see https://docs.searxng.org/dev/search_api.html eg https://searxng.yourdomain.com/search?q=<query>&engines=duckduckgo,google&format=json
  88. BING_SUBSCRIPTION_KEY=#your key
  89. ## Websearch configuration
  90. PLAYWRIGHT_ADBLOCKER=true
  91. WEBSEARCH_ALLOWLIST=`[]` # if it's defined, allow websites from only this list.
  92. WEBSEARCH_BLOCKLIST=`[]` # if it's defined, block websites from this list.
  93. WEBSEARCH_JAVASCRIPT=true # CPU usage reduces by 60% on average by disabling javascript. Enable to improve website compatibility
  94. WEBSEARCH_TIMEOUT = 3500 # in milliseconds, determines how long to wait to load a page before timing out
  95. ENABLE_LOCAL_FETCH=false #set to true to allow fetches on the local network. /!\ Only enable this if you have the proper firewall rules to prevent SSRF attacks and understand the implications.
  96. ## Public app configuration ##
  97. PUBLIC_APP_GUEST_MESSAGE=# a message to the guest user. If not set, no message will be shown. Only used if you have authentication enabled.
  98. PUBLIC_APP_NAME=ChatUI # name used as title throughout the app
  99. PUBLIC_APP_ASSETS=chatui # used to find logos & favicons in static/$PUBLIC_APP_ASSETS
  100. PUBLIC_APP_DESCRIPTION=# description used throughout the app
  101. PUBLIC_APP_DATA_SHARING=# Set to 1 to enable an option in the user settings to share conversations with model authors
  102. PUBLIC_APP_DISCLAIMER=# Set to 1 to show a disclaimer on login page
  103. PUBLIC_APP_DISCLAIMER_MESSAGE=# Message to show on the login page
  104. PUBLIC_ANNOUNCEMENT_BANNERS=`[
  105. {
  106. "title": "chat-ui is now open source!",
  107. "linkTitle": "check it out",
  108. "linkHref": "https://github.com/huggingface/chat-ui"
  109. }
  110. ]`
  111. PUBLIC_SMOOTH_UPDATES=false # set to true to enable smoothing of messages client-side, can be CPU intensive
  112. PUBLIC_ORIGIN=#https://huggingface.co
  113. PUBLIC_SHARE_PREFIX=#https://hf.co/chat
  114. # mostly huggingchat specific
  115. PUBLIC_GOOGLE_ANALYTICS_ID=#G-XXXXXXXX / Leave empty to disable
  116. PUBLIC_PLAUSIBLE_SCRIPT_URL=#/js/script.js / Leave empty to disable
  117. PUBLIC_APPLE_APP_ID=#1234567890 / Leave empty to disable
  118. ### Feature Flags ###
  119. LLM_SUMMARIZATION=true # generate conversation titles with LLMs
  120. ENABLE_ASSISTANTS=false #set to true to enable assistants feature
  121. ENABLE_ASSISTANTS_RAG=false # /!\ This will let users specify arbitrary URLs that the server will then request. Make sure you have the proper firewall rules in place.
  122. REQUIRE_FEATURED_ASSISTANTS=false # require featured assistants to show in the list
  123. COMMUNITY_TOOLS=false # set to true to enable community tools
  124. EXPOSE_API=true # make the /api routes available
  125. ALLOW_IFRAME=true # Allow the app to be embedded in an iframe
  126. ### Tools ###
  127. # Check out public config in `chart/env/prod.yaml` for more details
  128. TOOLS=`[]`
  129. ### Rate limits ###
  130. # See `src/lib/server/usageLimits.ts`
  131. # {
  132. # conversations: number, # how many conversations
  133. # messages: number, # how many messages in a conversation
  134. # assistants: number, # how many assistants
  135. # messageLength: number, # how long can a message be before we cut it off
  136. # messagesPerMinute: number, # how many messages per minute
  137. # tools: number # how many tools
  138. # }
  139. USAGE_LIMITS=`{}`
  140. ### HuggingFace specific ###
  141. # Let user authenticate with their HF token in the /api routes. This is only useful if you have OAuth configured with huggingface.
  142. USE_HF_TOKEN_IN_API=false
  143. ## Feature flag & admin settings
  144. # Used for setting early access & admin flags to users
  145. HF_ORG_ADMIN=
  146. HF_ORG_EARLY_ACCESS=
  147. WEBHOOK_URL_REPORT_ASSISTANT=#provide slack webhook url to get notified for reports/feature requests
  148. ### Metrics ###
  149. METRICS_ENABLED=false
  150. METRICS_PORT=5565
  151. LOG_LEVEL=info
  152. ### Parquet export ###
  153. # Not in use anymore but useful to export conversations to a parquet file as a HuggingFace dataset
  154. PARQUET_EXPORT_DATASET=
  155. PARQUET_EXPORT_HF_TOKEN=
  156. ADMIN_API_SECRET=# secret to admin API calls, like computing usage stats or exporting parquet data
  157. ### Docker build variables ###
  158. # These values cannot be updated at runtime
  159. # They need to be passed when building the docker image
  160. # See https://github.com/huggingface/chat-ui/main/.github/workflows/deploy-prod.yml#L44-L47
  161. APP_BASE="" # base path of the app, e.g. /chat, left blank as default
  162. PUBLIC_APP_COLOR=blue # can be any of tailwind colors: https://tailwindcss.com/docs/customizing-colors#default-color-palette
  163. ### Body size limit for SvelteKit https://svelte.dev/docs/kit/adapter-node#Environment-variables-BODY_SIZE_LIMIT
  164. BODY_SIZE_LIMIT=15728640
  165. PUBLIC_COMMIT_SHA=
  166. ### LEGACY parameters
  167. HF_ACCESS_TOKEN=#LEGACY! Use HF_TOKEN instead
  168. ALLOW_INSECURE_COOKIES=false # LEGACY! Use COOKIE_SECURE and COOKIE_SAMESITE instead
  169. PARQUET_EXPORT_SECRET=#DEPRECATED, use ADMIN_API_SECRET instead
  170. RATE_LIMIT= # /!\ DEPRECATED definition of messages per minute. Use USAGE_LIMITS.messagesPerMinute instead
  171. OPENID_CLIENT_ID=
  172. OPENID_CLIENT_SECRET=
  173. OPENID_SCOPES="openid profile" # Add "email" for some providers like Google that do not provide preferred_username
  174. OPENID_NAME_CLAIM="name" # Change to "username" for some providers that do not provide name
  175. OPENID_PROVIDER_URL=https://huggingface.co # for Google, use https://accounts.google.com
  176. OPENID_TOLERANCE=
  177. OPENID_RESOURCE=
Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...