summaryrefslogtreecommitdiff
path: root/schema/json/Models.json
blob: 361ae9ebf5a1ce3b7acec8679e914d46c69fbda9 (plain)
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
{
  "title": "Models",
  "$ref": "#/definitions/continuedev__core__models__Models",
  "definitions": {
    "LLM": {
      "title": "LLM",
      "type": "object",
      "properties": {
        "title": {
          "title": "Title",
          "description": "A title that will identify this model in the model selection dropdown",
          "type": "string"
        },
        "unique_id": {
          "title": "Unique Id",
          "description": "The unique ID of the user.",
          "type": "string"
        },
        "model": {
          "title": "Model",
          "description": "The name of the model to be used (e.g. gpt-4, codellama)",
          "type": "string"
        },
        "system_message": {
          "title": "System Message",
          "description": "A system message that will always be followed by the LLM",
          "type": "string"
        },
        "context_length": {
          "title": "Context Length",
          "description": "The maximum context length of the LLM in tokens, as counted by count_tokens.",
          "default": 2048,
          "type": "integer"
        },
        "stop_tokens": {
          "title": "Stop Tokens",
          "description": "Tokens that will stop the completion.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "temperature": {
          "title": "Temperature",
          "description": "The temperature of the completion.",
          "type": "number"
        },
        "top_p": {
          "title": "Top P",
          "description": "The top_p of the completion.",
          "type": "number"
        },
        "top_k": {
          "title": "Top K",
          "description": "The top_k of the completion.",
          "type": "integer"
        },
        "presence_penalty": {
          "title": "Presence Penalty",
          "description": "The presence penalty Aof the completion.",
          "type": "number"
        },
        "frequency_penalty": {
          "title": "Frequency Penalty",
          "description": "The frequency penalty of the completion.",
          "type": "number"
        },
        "timeout": {
          "title": "Timeout",
          "description": "Set the timeout for each request to the LLM. If you are running a local LLM that takes a while to respond, you might want to set this to avoid timeouts.",
          "default": 300,
          "type": "integer"
        },
        "verify_ssl": {
          "title": "Verify Ssl",
          "description": "Whether to verify SSL certificates for requests.",
          "type": "boolean"
        },
        "ca_bundle_path": {
          "title": "Ca Bundle Path",
          "description": "Path to a custom CA bundle to use when making the HTTP request",
          "type": "string"
        },
        "proxy": {
          "title": "Proxy",
          "description": "Proxy URL to use when making the HTTP request",
          "type": "string"
        },
        "headers": {
          "title": "Headers",
          "description": "Headers to use when making the HTTP request",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "prompt_templates": {
          "title": "Prompt Templates",
          "description": "A dictionary of prompt templates that can be used to customize the behavior of the LLM in certain situations. For example, set the \"edit\" key in order to change the prompt that is used for the /edit slash command. Each value in the dictionary is a string templated in mustache syntax, and filled in at runtime with the variables specific to the situation. See the documentation for more information.",
          "default": {},
          "type": "object"
        },
        "api_key": {
          "title": "Api Key",
          "description": "The API key for the LLM provider.",
          "type": "string"
        }
      },
      "required": [
        "model"
      ]
    },
    "ContinueSDK": {
      "title": "ContinueSDK",
      "type": "object",
      "properties": {}
    },
    "continuedev__core__models__Models": {
      "title": "Models",
      "description": "Main class that holds the current model configuration",
      "type": "object",
      "properties": {
        "default": {
          "$ref": "#/definitions/LLM"
        },
        "summarize": {
          "$ref": "#/definitions/LLM"
        },
        "edit": {
          "$ref": "#/definitions/LLM"
        },
        "chat": {
          "$ref": "#/definitions/LLM"
        },
        "saved": {
          "title": "Saved",
          "default": [],
          "type": "array",
          "items": {
            "$ref": "#/definitions/LLM"
          }
        },
        "sdk": {
          "$ref": "#/definitions/ContinueSDK"
        }
      },
      "required": [
        "default"
      ]
    }
  }
}