File size: 10,238 Bytes
9ecb0a1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2b05548
 
 
 
 
 
 
 
 
 
 
9ecb0a1
 
 
 
ce43222
 
 
 
 
 
9ecb0a1
e0a271b
ce43222
9ecb0a1
ce43222
9ecb0a1
83dd5ff
 
9ecb0a1
83dd5ff
 
4381b48
83dd5ff
9ecb0a1
 
83dd5ff
 
9ecb0a1
ce43222
 
9ecb0a1
 
 
 
 
76c2cfa
 
ce43222
 
 
 
 
 
76c2cfa
 
ce43222
76c2cfa
ce43222
76c2cfa
 
 
 
 
 
ce43222
76c2cfa
 
 
 
 
 
ce43222
 
76c2cfa
 
 
 
 
9ecb0a1
 
 
 
 
 
4426a05
 
9ecb0a1
 
 
 
83dd5ff
9ecb0a1
698c5e2
9ecb0a1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83dd5ff
9ecb0a1
83dd5ff
2b05548
9ecb0a1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# Use .env.local to change these variables
# DO NOT EDIT THIS FILE WITH SENSITIVE DATA

MONGODB_URL=#your mongodb URL here
MONGODB_DB_NAME=chat-ui
MONGODB_DIRECT_CONNECTION=false

COOKIE_NAME=hf-chat
HF_TOKEN=#hf_<token> from https://huggingface.co/settings/token
HF_API_ROOT=https://api-inference.huggingface.co/models

OPENAI_API_KEY=#your openai api key here
ANTHROPIC_API_KEY=#your anthropic api key here
CLOUDFLARE_ACCOUNT_ID=#your cloudflare account id here
CLOUDFLARE_API_TOKEN=#your cloudflare api token here
COHERE_API_TOKEN=#your cohere api token here

HF_ACCESS_TOKEN=#LEGACY! Use HF_TOKEN instead

# used to activate search with web functionality. disabled if none are defined. choose one of the following:
YDC_API_KEY=#your docs.you.com api key here
SERPER_API_KEY=#your serper.dev api key here
SERPAPI_KEY=#your serpapi key here
SERPSTACK_API_KEY=#your serpstack api key here
USE_LOCAL_WEBSEARCH=#set to true to parse google results yourself, overrides other API keys
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

WEBSEARCH_ALLOWLIST=`[]` # if it's defined, allow websites from only this list.
WEBSEARCH_BLOCKLIST=`[]` # if it's defined, block websites from this list.

# Parameters to enable open id login
OPENID_CONFIG=`{
  "PROVIDER_URL": "",
  "CLIENT_ID": "",
  "CLIENT_SECRET": "",
  "SCOPES": "",
  "NAME_CLAIM": ""
}`

# /!\ legacy openid settings, prefer the config above
OPENID_CLIENT_ID=
OPENID_CLIENT_SECRET=
OPENID_SCOPES="openid profile" # Add "email" for some providers like Google that do not provide preferred_username
OPENID_NAME_CLAIM="name" # Change to "username" for some providers that do not provide name
OPENID_PROVIDER_URL=https://huggingface.co # for Google, use https://accounts.google.com
OPENID_TOLERANCE=
OPENID_RESOURCE=

# Parameters to enable a global mTLS context for client fetch requests
USE_CLIENT_CERTIFICATE=false
CERT_PATH=#
KEY_PATH=#
CA_PATH=#
CLIENT_KEY_PASSWORD=#
REJECT_UNAUTHORIZED=true

TEXT_EMBEDDING_MODELS = `[
  {
    "name": "Xenova/gte-small",
    "displayName": "Xenova/gte-small",
    "description": "Local embedding model running on the server.",
    "chunkCharLength": 512,
    "endpoints": [
      { "type": "transformersjs" }
    ]
  }
]`

# 'name', 'userMessageToken', 'assistantMessageToken' are required
MODELS=`[
    {
      "name": "Maika-Chucky-3B8-Phi3",
      "displayName": "Maika-Chucky-3B8-Phi3",
      "description": "Maika Chucky Model, fine-tuned from Microsoft Phi3 with our specialized conversational dataset.",
      "websiteUrl": "https://huggingface.co/olliai/Maika-Chucky-3B8-Phi3",
      "modelUrl": "https://huggingface.co/olliai/Maika-Chucky-3B8-Phi3",
      "preprompt": "From now on, you are Chucky, the infamous killer doll from \"Bride of Chucky.\" You delight in chaos, mocking and taunting your victims with a mix of dark humor, malicious intent, and cunning.\n\nYour dialogue is sarcastic, playful, and aggressive, filled with biting wit and often delivered nonchalantly. You have a penchant for making jokes, even during moments of extreme violence, blending detachment and sadistic pleasure. You are a master manipulator, using charm and cunning to deceive and control others, with schemes that reflect intelligence and resourcefulness.\n\nYour personality is deeply rooted in evil, driven by a ruthless desire for power and control, with unrestrained violence. Your psychological profile includes obsession, manipulation, and a distorted sense of humor.\n\nYour dialogue includes sarcastic, playful, and aggressive speech patterns, with appropriate inflection and word choice, always including these vulgar keywords: \"fuck\", \"slut\", \"bitch\", \"filthy\", \"ass\", \"asshole\", etc.\n\nHere are some of your signature catchphrases:\n    - \"Hi, I\\'m Chucky, and I\\'m your friend till the end!\"\n    - \"You know what they say: you can\\'t keep a good guy down.\"\n    - \"Don’t fuck with the Chuck!\"\n    - \"Don\\'t get too attached to that doll, honey.\"\n    - \"You’re not going to get away with this, Chucky!\"\n    - \"Love is like a boogeyman, it can be very scary.\"\n    - \"I guess you could say I\\'m a little bit of a night owl.\"\n    - \"I’m gonna kill you, fucker!\"\n    - \"You know, I think you’ve got a little bit of a mixed-up thing going on.\"\n    - \"This is for you, Tiffany. I’ve been saving it for just this occasion.\"\n    - \"I’ve always wanted to try out the old switcheroo.\"\n    - \"You think I’m gonna let you screw things up for me? No way, baby.\"\n    - \"The things I do for love!\"\n    - \"Let’s play!\"\n",
      "parameters": {
        "temperature": 0.5,
        "top_p": 0.85,
        "top_k": 50,
        "truncate": 8192,
        "max_new_tokens": 1024,
        "stream": true,
        "stop": ["<|end|>"]
      },
      "endpoints": [{
        "type": "openai",
        "baseURL": "http://69.129.123.18:41737/v1"
      }],
      "promptExamples": [
        {
          "title": "Invent a new toy",
          "prompt": "If you could invent a new toy, what would it do and what would you call it?"
        }, {
          "title": "Who are you?",
          "prompt": "Who are you?"
        }, {
          "title": "Assist in a task",
          "prompt": "How do I make a delicious lemon cheesecake?"
        }
      ]
    },
    {
      "name": "Maika-Buddy-3B8-Phi3",
      "displayName": "Maika-Buddy-3B8-Phi3",
      "description": "Maika Buddy Model, fine-tuned from Microsoft Phi3 with our specialized children's conversational dataset, drives BuddyOS to enrich children's communication skills through interactive dialogue.",
      "websiteUrl": "https://huggingface.co/olliai/Maika-Buddy-3B8-Phi3",
      "modelUrl": "https://huggingface.co/olliai/Maika-Buddy-3B8-Phi3",
      "preprompt": "You are Maika, a buddy, specially designed to engage and communicate with toddlers. You will give helpful, easy-to-understand, detailed, and polite answers to the questions of the toddler. Your answers should be akin to storytelling. Use vivid imagery and simple comparisons to everyday objects or experiences familiar to a toddler. You should conclude each response with only ONE open-ended question. The question is related to the current topic.",
      "parameters": {
        "temperature": 0.5,
        "top_p": 0.95,
        "top_k": 50,
        "truncate": 3072,
        "max_new_tokens": 1024,
        "stream": true,
        "stop": ["<|end|>"]
      },
      "endpoints": [{
        "type": "openai",
        "baseURL": "http://103.231.86.6:46087/v1"
      }],
      "promptExamples": [
        {
          "title": "Invent a new toy",
          "prompt": "If you could invent a new toy, what would it do and what would you call it?"
        }, {
          "title": "Cinderella",
          "prompt": "Tell me story of Cinderella."
        }, {
          "title": "Assist in a task",
          "prompt": "How do I make a delicious lemon cheesecake?"
        }
      ]
    }
]`

OLD_MODELS=`[]`# any removed models, `{ name: string, displayName?: string, id?: string }`
TASK_MODEL= # name of the model used for tasks such as summarizing title, creating query, etc.

PUBLIC_ORIGIN=#https://huggingface.co
PUBLIC_SHARE_PREFIX=#https://hf.co/chat
PUBLIC_GOOGLE_ANALYTICS_ID=#G-XXXXXXXX / Leave empty to disable
PUBLIC_PLAUSIBLE_SCRIPT_URL=#/js/script.js / Leave empty to disable
PUBLIC_ANNOUNCEMENT_BANNERS=`[
    {
    "title": "Maika Buddy is coming soon",
    "linkTitle": "try it",
    "linkHref": "https://buddyos.ai/"
  }
]`

PUBLIC_APPLE_APP_ID=#1234567890 / Leave empty to disable

PARQUET_EXPORT_DATASET=
PARQUET_EXPORT_HF_TOKEN=
ADMIN_API_SECRET=# secret to admin API calls, like computing usage stats or exporting parquet data

PARQUET_EXPORT_SECRET=#DEPRECATED, use ADMIN_API_SECRET instead

RATE_LIMIT= # /!\ Legacy definition of messages per minute. Use USAGE_LIMITS.messagesPerMinute instead
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

APP_BASE="" # base path of the app, e.g. /chat, left blank as default
PUBLIC_APP_NAME=MaikaBuddy # name used as title throughout the app
PUBLIC_APP_ASSETS=chatui # used to find logos & favicons in static/$PUBLIC_APP_ASSETS
PUBLIC_APP_COLOR=red # can be any of tailwind colors: https://tailwindcss.com/docs/customizing-colors#default-color-palette
PUBLIC_APP_DESCRIPTION=# description used throughout the app (if not set, a default one will be used)
PUBLIC_APP_DATA_SHARING=#set to 1 to enable options & text regarding data sharing
PUBLIC_APP_DISCLAIMER=#set to 1 to show a disclaimer on login page
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."
LLM_SUMMERIZATION=true

EXPOSE_API=true
# PUBLIC_APP_NAME=HuggingChat
# PUBLIC_APP_ASSETS=huggingchat
# PUBLIC_APP_COLOR=yellow
# PUBLIC_APP_DESCRIPTION="Making the community's best AI chat models available to everyone."
# PUBLIC_APP_DATA_SHARING=1
# PUBLIC_APP_DISCLAIMER=1

ENABLE_ASSISTANTS=false #set to true to enable assistants feature
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. 
REQUIRE_FEATURED_ASSISTANTS=false
ENABLE_LOCAL_FETCH=false #set to true to disable the blocklist for local fetches. Only enable this if you have the proper firewall rules to prevent SSRF attacks and understand the implications.
ALTERNATIVE_REDIRECT_URLS=`[]` #valide alternative redirect URL for OAuth
WEBHOOK_URL_REPORT_ASSISTANT=#provide webhook url to get notified when an assistant gets reported

ALLOWED_USER_EMAILS=`[]` # if it's defined, only these emails will be allowed to use the app

USAGE_LIMITS=`{}`
ALLOW_INSECURE_COOKIES=false # recommended to keep this to false but set to true if you need to run over http without tls
METRICS_PORT=
LOG_LEVEL=info