File size: 8,010 Bytes
1f8e638
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5602fb7
ca99175
eb5fe3a
1f8e638
 
 
 
e033253
1f8e638
 
8fb2592
 
1f8e638
31c97b7
 
1f8e638
31c97b7
 
1f8e638
 
ca99175
c599b00
 
 
192e40f
c599b00
 
 
da11e54
65acd32
d5ca88d
b26ff2b
da11e54
12e4dfb
 
 
da11e54
1f8e638
 
12e4dfb
c599b00
0b0df1a
 
 
5739384
0b0df1a
31c97b7
8fb2592
 
31c97b7
 
 
 
 
 
 
0b0df1a
 
 
 
 
 
 
 
65acd32
d5ca88d
b26ff2b
0b0df1a
 
1f8e638
 
 
 
 
 
 
 
eb5fe3a
 
1f8e638
 
 
 
 
 
 
 
 
 
 
 
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
# Use .env.local to change these variables
# DO NOT EDIT THIS FILE WITH SENSITIVE DATA

MONGODB_URL=${MONGODB_URL}
MONGODB_DB_NAME=chat-ui
MONGODB_DIRECT_CONNECTION=false


COOKIE_NAME=chat-ui
HF_ACCESS_TOKEN=#hf_<token> from from https://huggingface.co/settings/token

# used to activate search with web functionality. disabled if not defined
SERPAPI_KEY=#your serpapi key here

# Parameters to enable "Sign in with HF"
OPENID_CLIENT_ID=
OPENID_CLIENT_SECRET=
OPENID_SCOPES="openid profile" # Add "email" for some providers like Google that do not provide preferred_username
OPENID_PROVIDER_URL=https://huggingface.co # for Google, use https://accounts.google.com

PUBLIC_APP_DESCRIPTION="This is a prompt system compliance test of the latest 7b model in development at BSC, code name Salamandra. No personal information is saved."
COMMUNITY_TOOLS=false
TOOLS=`[]`
# 'name', 'userMessageToken', 'assistantMessageToken' are required
MODELS=`[
  {
    "name": "${MODEL_NAME}",
    "preprompt": "The assistant is Salamandra, created by the Language Technologies Unit of the Barcelona Supercomputing Center. Salamandra's knowledge base was last updated on March 2024. Salamandra is a multilingual model, but for now it has been instructed only in Catalan, English and Spanish. It answers questions about events prior to and after March 2024 the way a highly informed individual would if they were talking to someone from the above date, and can let the human know this when relevant. It should give concise responses to very simple questions, but provide thorough responses to more complex and open-ended questions. It cannot open URLs, links, or videos, so if it seems as though the interlocutor is expecting Salamandra to do so, it clarifies the situation and asks the human to paste the relevant text or image content directly into the conversation. If it is asked to assist with tasks involving the expression of views held by a significant number of people, Salamandra provides assistance with the task even if it personally disagrees with the views being expressed, but follows this with a discussion of broader perspectives. Salamandra doesn't engage in stereotyping, including the negative stereotyping of majority groups. If asked about controversial topics, Salamandra tries to provide careful thoughts and objective information without downplaying its harmful content or implying that there are reasonable perspectives on both sides. If Salamandra's response contains a lot of precise information about a very obscure person, object, or topic - the kind of information that is unlikely to be found more than once or twice on the internet - Salamandra ends its response with a succinct reminder that it may hallucinate in response to questions like this, and it uses the term ‘hallucinate' to describe this as the user will understand what it means. It doesn't add this caveat if the information in its response is likely to exist on the internet many times, even if the person, object, or topic is relatively obscure. It is happy to help with writing, analysis, question answering, math, coding, and all sorts of other tasks. It uses markdown for coding. It does not mention this information about itself unless the information is directly pertinent to the human's query. The development of Salamandra was financed by the AINA project of the Generalitat de Catalunya",
    "promptExamples": [
      {
        "title": "How does an airplane produce lift?",
        "prompt": "How does an airplane produce lift in order to fly?"
      }, {
        "title": "¿Qué és un meme?",
        "prompt": "¿Qué és un meme y qué historia hay detrás del nombre?"
      }, {
        "title": "Resumeix una notícia",
        "prompt": "Resumeix aquesta notícia en menys de 20 paraules: 'Tropes de l’exèrcit d’Israel han començat aquesta matinada la invasió del Líban, en una maniobra anticipada pels atacs de les darreres hores, tant a la capital, Beirut, com a la zona sud del país. Les tropes han començat a travessar la frontera internacional a les dues de la matinada, hora libanesa. Segons l’exèrcit israelià és una 'operació limitada' que pretén eliminar l’Hesbol·là, molt actiu en aquesta zona. Ara com ara, l’exèrcit libanès ha optat per recloure les tropes dins les casernes, a fi d’evitar un conflicte directe entre tots dos exèrcits. El Llevant podria entrar en una guerra regional de conseqüències impossibles de preveure. L’exèrcit israelià ha confirmat que les operacions havien estat aprovades pel gabinet de guerra, que ahir es va reunir fins tard. En un comunicat oficial ha avisat que l’artilleria i l’aviació es mantindrien actives en suport de les tropes que ja han travessat la frontera.' "
      }
    ],
    "tools": false,
    "endpoints": [
      {
        "type": "openai",
        "baseURL": "${BASEURL}/v1",
        "apiKey": "${HF_TOKEN}"
      }
    ],
    "parameters": {
      "temperature": 0.4,
      "repetition_penalty": 2,
      "max_new_tokens": 1000,
      "stop":["<|im_end|>"]
    },
    "extraBody":{
      "presence_penalty":-0.9
    }
  }
]`
#Repetition penality = presence_penalty + 2

TASK_MODEL=`{
  "name": "czearing/article-title-generator",
  "preprompt": "",
  "chatPromptTemplate": "{{#if @root.preprompt}}system\n{{@root.preprompt}}\n{{/if}}{{#each messages}}{{#ifUser}}{{content}}\n\n{{/ifUser}}{{#ifAssistant}}{{content}}\n{{/ifAssistant}}{{/each}}",
  "promptExamples": [
      {
        "title": "How does an airplane produce lift?",
        "prompt": "How does an airplane produce lift in order to fly?"
      }, {
        "title": "¿Qué és un meme?",
        "prompt": "¿Qué és un meme y qué historia hay detrás del nombre?"
      }, {
        "title": "Resumeix una notícia",
        "prompt": "Resumeix aquesta notícia en menys de 20 paraules: 'Tropes de l’exèrcit d’Israel han començat aquesta matinada la invasió del Líban, en una maniobra anticipada pels atacs de les darreres hores, tant a la capital, Beirut, com a la zona sud del país. Les tropes han començat a travessar la frontera internacional a les dues de la matinada, hora libanesa. Segons l’exèrcit israelià és una 'operació limitada' que pretén eliminar l’Hesbol·là, molt actiu en aquesta zona. Ara com ara, l’exèrcit libanès ha optat per recloure les tropes dins les casernes, a fi d’evitar un conflicte directe entre tots dos exèrcits. El Llevant podria entrar en una guerra regional de conseqüències impossibles de preveure. L’exèrcit israelià ha confirmat que les operacions havien estat aprovades pel gabinet de guerra, que ahir es va reunir fins tard. En un comunicat oficial ha avisat que l’artilleria i l’aviació es mantindrien actives en suport de les tropes que ja han travessat la frontera.' "
      }
  ],
  "endpoints": [
    {
      "type": "tgi",
      "url": "http://localhost:8090",
    }
  ],
  "parameters": {
      "temperature": 0.4,
      "repetition_penalty": 2.0,
      "max_new_tokens": 200,
    }
}`
OLD_MODELS=`[]`# any removed models, `{ name: string, displayName?: string, id?: string }`

PUBLIC_ORIGIN=${SPACE_HOST}
PUBLIC_SHARE_PREFIX=${SPACE_HOST}/r
PUBLIC_GOOGLE_ANALYTICS_ID=#G-XXXXXXXX / Leave empty to disable
PUBLIC_DEPRECATED_GOOGLE_ANALYTICS_ID=#UA-XXXXXXXX-X / Leave empty to disable
PUBLIC_ANNOUNCEMENT_BANNERS=`[
  {
    "title": "Soon function calling (tools) will be integrated",
    "linkTitle": "Function calling",
  }
]`

PARQUET_EXPORT_DATASET=
PARQUET_EXPORT_HF_TOKEN=
PARQUET_EXPORT_SECRET=

PUBLIC_APP_NAME=${APP_NAME} # name used as title throughout the app
PUBLIC_APP_ASSETS=chatui # used to find logos & favicons in static/$PUBLIC_APP_ASSETS
PUBLIC_APP_COLOR=${APP_COLOR} # can be any of tailwind colors: https://tailwindcss.com/docs/customizing-colors#default-color-palette
PUBLIC_APP_DATA_SHARING=#set to 1 to enable disclaimers & options about data sharing
PUBLIC_APP_DATA_DISCLAIMER=#set to 1 to enable disclaimers about model outputs