File size: 12,102 Bytes
d021a5a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
import os
from dotenv import load_dotenv

load_dotenv()

BASE_URL = "https://www.blackbox.ai"
common_headers = {
    'accept': '*/*',
    'accept-language': 'en-US,en;q=0.9',
    'content-type': 'application/json',
    'origin': BASE_URL,
    'priority': 'u=1, i',
    'sec-ch-ua': '"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"',
    'sec-ch-ua-arch': '"x86"',
    'sec-ch-ua-bitness': '"64"',
    'sec-ch-ua-full-version': '"131.0.6778.86"',
    'sec-ch-ua-full-version-list': '"Google Chrome";v="131.0.6778.86", "Chromium";v="131.0.6778.86", "Not_A Brand";v="24.0.0.0"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-model': '""',
    'sec-ch-ua-platform': '"Windows"',
    'sec-ch-ua-platform-version': '"19.0.0"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'same-origin',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36',
}
# Header Configurations for Specific API Calls
def get_headers_api_chat(referer_url):
    return {**common_headers, 'Content-Type': 'application/json', 'Referer': referer_url}

def get_headers_chat(chat_url, next_action, next_router_state_tree):
    return {
        **common_headers,
        'Accept': 'text/x-component',
        'Content-Type': 'text/plain;charset=UTF-8',
        'Referer': chat_url,
        'next-action': next_action,
        'next-router-state-tree': next_router_state_tree,
        'next-url': '/',
    }

APP_SECRET = os.getenv("APP_SECRET")

ALLOWED_MODELS = [
    {"id": "blackboxai", "name": "blackboxai"},
    {"id": "blackboxai-pro", "name": "blackboxai-pro"},
    {"id": "flux", "name": "flux"},
    {"id": "llama-3.1-8b", "name": "llama-3.1-8b"},
    {"id": "llama-3.1-70b", "name": "llama-3.1-70b"},
    {"id": "llama-3.1-405b", "name": "llama-3.1-405"},
    {"id": "gpt-4o", "name": "gpt-4o"},
    {"id": "gpt-4o-2024-05-13", "name": "gpt-4o"},
    {"id": "gemini-pro", "name": "gemini-pro"},
    {"id": "gemini-1.5-flash", "name": "gemini-1.5-flash"},
    {"id": "claude-sonnet-3.5", "name": "claude-sonnet-3.5"},
    {"id": "Meta-Llama-3.3-70B-Instruct-Turbo", "name": "Meta-Llama-3.3-70B-Instruct-Turbo"},
    {"id": "Mistral-7B-Instruct-v0.2", "name": "Mistral-7B-Instruct-v0.2"},
    {"id": "deepseek-llm-67b-chat", "name": "deepseek-llm-67b-chat"},
    {"id": "dbrx-instruct", "name": "dbrx-instruct"},
    {"id": "Meta-Llama-3.1-405B-Instruct-Turbo", "name": "Meta-Llama-3.1-405B-Instruct-Turbo"},
    {"id": "Qwen-QwQ-32B-Preview", "name": "Qwen-QwQ-32B-Preview"},
    {"id": "Nous-Hermes-2-Mixtral-8x7B-DPO", "name": "Nous-Hermes-2-Mixtral-8x7B-DPO"},
    {"id": "PythonAgent", "name": "python"},
    {"id": "JavaAgent", "name": "java"},
    {"id": "JavaScriptAgent", "name": "javascript"},
    {"id": "HTMLAgent", "name": "html"},
    {"id": "GoogleCloudAgent", "name": "googlecloud"},
    {"id": "AndroidDeveloper", "name": "androiddeveloper"},
    {"id": "SwiftDeveloper", "name": "swiftdeveloper"},
    {"id": "Next.jsAgent", "name": "next.js"},
    {"id": "MongoDBAgent", "name": "mongodb"},
    {"id": "PyTorchAgent", "name": "pytorch"},
    {"id": "ReactAgent", "name": "react"},
    {"id": "XcodeAgent", "name": "xcode"},
    {"id": "AngularJSAgent", "name": "angularjs"},
    {"id": "HerokuAgent", "name": "heroku"},
    {"id": "GodotAgent", "name": "godot"},
    {"id": "GoAgent", "name": "go"},
    {"id": "GitlabAgent", "name": "gitlab"},
    {"id": "GitAgent", "name": "git"},
    {"id": "RepoMap", "name": "repomap"},
    {"id": "gemini-1.5-pro-latest", "name": "gemini-pro"},
    {"id": "gemini-1.5-pro", "name": "gemini-pro"},
    {"id": "claude-3-5-sonnet-20240620", "name": "claude-sonnet-3.5"},
    {"id": "claude-3-5-sonnet", "name": "claude-sonnet-3.5"},
    {"id": "Niansuh", "name": "niansuh"},
    {"id": "o1-preview", "name": "o1-preview"},
    {"id": "claude-3-5-sonnet-20241022", "name": "claude-3-5-sonnet-20241022"},
    {"id": "claude-3-5-sonnet-x", "name": "claude-3-5-sonnet-x"},
    {"id": "gpt-3.5-turbo", "name": "gpt-3.5-turbo"},
    {"id": "gpt-3.5-turbo-202201", "name": "gpt-3.5-turbo-202201"},

    # Added New Agents
    {"id": "FlaskAgent", "name": "flask"},
    {"id": "FirebaseAgent", "name": "firebase"},
    {"id": "FastAPIAgent", "name": "fastapi"},
    {"id": "ErlangAgent", "name": "erlang"},
    {"id": "ElectronAgent", "name": "electron"},
    {"id": "DockerAgent", "name": "docker"},
    {"id": "DigitalOceanAgent", "name": "digitalocean"},
    {"id": "BitbucketAgent", "name": "bitbucket"},
    {"id": "AzureAgent", "name": "azure"},
    {"id": "FlutterAgent", "name": "flutter"},
    {"id": "YoutubeAgent", "name": "youtube"},
    {"id": "builderAgent", "name": "builder"},
]

MODEL_MAPPING = {
    "blackboxai": "blackboxai",
    "blackboxai-pro": "blackboxai-pro",
    "flux": "flux",
    "ImageGeneration": "flux",
    "llama-3.1-8b": "llama-3.1-8b",
    "llama-3.1-70b": "llama-3.1-70b",
    "llama-3.1-405b": "llama-3.1-405",
    "gpt-4o": "gpt-4o",
    "gpt-4o-2024-05-13": "gpt-4o",
    "gemini-pro": "gemini-pro",
    "gemini-1.5-flash": "gemini-1.5-flash",
    "claude-sonnet-3.5": "claude-sonnet-3.5",
    "Meta-Llama-3.3-70B-Instruct-Turbo": "Meta-Llama-3.3-70B-Instruct-Turbo",
    "Mistral-7B-Instruct-v0.2": "Mistral-7B-Instruct-v0.2",
    "deepseek-llm-67b-chat": "deepseek-llm-67b-chat",
    "dbrx-instruct": "dbrx-instruct",
    "Meta-Llama-3.1-405B-Instruct-Turbo": "Meta-Llama-3.1-405B-Instruct-Turbo",
    "Qwen-QwQ-32B-Preview": "Qwen-QwQ-32B-Preview",
    "Nous-Hermes-2-Mixtral-8x7B-DPO": "Nous-Hermes-2-Mixtral-8x7B-DPO",
    "PythonAgent": "python",
    "JavaAgent": "java",
    "JavaScriptAgent": "javascript",
    "HTMLAgent": "html",
    "GoogleCloudAgent": "googlecloud",
    "AndroidDeveloper": "androiddeveloper",
    "SwiftDeveloper": "swiftdeveloper",
    "Next.jsAgent": "next.js",
    "MongoDBAgent": "mongodb",
    "PyTorchAgent": "pytorch",
    "ReactAgent": "react",
    "XcodeAgent": "xcode",
    "AngularJSAgent": "angularjs",
    "HerokuAgent": "heroku",
    "GodotAgent": "godot",
    "GoAgent": "go",
    "GitlabAgent": "gitlab",
    "GitAgent": "git",
    "RepoMap": "repomap",
    # Additional mappings
    "gemini-flash": "gemini-1.5-flash",
    "claude-3.5-sonnet": "claude-sonnet-3.5",
    "gemini-1.5-pro-latest": "gemini-pro",
    "gemini-1.5-pro": "gemini-pro",
    "claude-3-5-sonnet-20240620": "claude-sonnet-3.5",
    "claude-3-5-sonnet": "claude-sonnet-3.5",
    "Niansuh": "niansuh",
    "o1-preview": "o1-preview",
    "claude-3-5-sonnet-20241022": "claude-3-5-sonnet-20241022",
    "claude-3-5-sonnet-x": "claude-3-5-sonnet-x",
    "gpt-3.5-turbo": "gpt-3.5-turbo",
    "gpt-3.5-turbo-202201": "gpt-3.5-turbo-202201",

    # Added New Agents
    "FlaskAgent": "flask",
    "FirebaseAgent": "firebase",
    "FastAPIAgent": "fastapi",
    "ErlangAgent": "erlang",
    "ElectronAgent": "electron",
    "DockerAgent": "docker",
    "DigitalOceanAgent": "digitalocean",
    "BitbucketAgent": "bitbucket",
    "AzureAgent": "azure",
    "FlutterAgent": "flutter",
    "YoutubeAgent": "youtube",
    "builderAgent": "builder",
}

# Agent modes
AGENT_MODE = {
    'flux': {'mode': True, 'id': "ImageGenerationLV45LJp", 'name': "flux"},
    'Niansuh': {'mode': True, 'id': "NiansuhAIk1HgESy", 'name': "niansuh"},
    'o1-preview': {'mode': True, 'id': "o1Dst8La8", 'name': "o1-preview"},
    'claude-3-5-sonnet-20241022': {'mode': True, 'id': "Claude-Sonnet-3.5zO2HZSF", 'name': "claude-3-5-sonnet-20241022"},
    'claude-3-5-sonnet-x': {'mode': True, 'id': "Claude-Sonnet-3.52022JE0UdQ3", 'name': "claude-3-5-sonnet-x"},
    'gpt-3.5-turbo': {'mode': True, 'id': "GPT-3.5-TurboYxtGz0H", 'name': "gpt-3.5-turbo"},
    'gpt-3.5-turbo-202201': {'mode': True, 'id': "GPT-3.5-Turbo-202201PNWREyV", 'name': "gpt-3.5-turbo-202201"},
    'Meta-Llama-3.3-70B-Instruct-Turbo': {'mode': True, 'id': "meta-llama/Llama-3.3-70B-Instruct-Turbo", 'name': "Meta-Llama-3.3-70B-Instruct-Turbo"},
    'Mistral-7B-Instruct-v0.2': {'mode': True, 'id': "mistralai/Mistral-7B-Instruct-v0.2", 'name': "Mistral-7B-Instruct-v0.2"},
    'deepseek-llm-67b-chat': {'mode': True, 'id': "deepseek-ai/deepseek-llm-67b-chat", 'name': "deepseek-llm-67b-chat"},
    'dbrx-instruct': {'mode': True, 'id': "databricks/dbrx-instruct", 'name': "dbrx-instruct"},
    'Meta-Llama-3.1-405B-Instruct-Turbo': {'mode': True, 'id': "meta-llama/Meta-Llama-3.1-405B-Instruct-Lite-Pro", 'name': "Meta-Llama-3.1-405B-Instruct-Turbo"},
    'Qwen-QwQ-32B-Preview': {'mode': True, 'id': "Qwen/QwQ-32B-Preview", 'name': "Qwen-QwQ-32B-Preview"},
    'Nous-Hermes-2-Mixtral-8x7B-DPO': {'mode': True, 'id': "NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO", 'name': "Nous-Hermes-2-Mixtral-8x7B-DPO"},

}

TRENDING_AGENT_MODE = {
    "blackboxai": {},
    "gemini-1.5-flash": {'mode': True, 'id': 'gemini'},
    "llama-3.1-8b": {'mode': True, 'id': "llama-3.1-8b"},
    'llama-3.1-70b': {'mode': True, 'id': "llama-3.1-70b"},
    'llama-3.1-405b': {'mode': True, 'id': "llama-3.1-405"},
    'blackboxai-pro': {'mode': True, 'id': "blackboxai-pro"},
    'PythonAgent': {'mode': True, 'id': "python"},
    'JavaAgent': {'mode': True, 'id': "java"},
    'JavaScriptAgent': {'mode': True, 'id': "javascript"},
    'HTMLAgent': {'mode': True, 'id': "html"},
    'GoogleCloudAgent': {'mode': True, 'id': "googlecloud"},
    'AndroidDeveloper': {'mode': True, 'id': "android"},
    'SwiftDeveloper': {'mode': True, 'id': "swift"},
    'Next.jsAgent': {'mode': True, 'id': "next.js"},
    'MongoDBAgent': {'mode': True, 'id': "mongodb"},
    'PyTorchAgent': {'mode': True, 'id': "pytorch"},
    'ReactAgent': {'mode': True, 'id': "react"},
    'XcodeAgent': {'mode': True, 'id': "xcode"},
    'AngularJSAgent': {'mode': True, 'id': "angularjs"},
    'HerokuAgent': {'mode': True, 'id': "heroku"},
    'GodotAgent': {'mode': True, 'id': "godot"},
    'GoAgent': {'mode': True, 'id': "go"},
    'GitlabAgent': {'mode': True, 'id': "gitlab"},
    'GitAgent': {'mode': True, 'id': "git"},
    'RepoMap': {'mode': True, 'id': "repomap"},
    'FlaskAgent': {'mode': True, 'id': "flask"},
    'FirebaseAgent': {'mode': True, 'id': "firebase"},
    'FastAPIAgent': {'mode': True, 'id': "fastapi"},
    'ErlangAgent': {'mode': True, 'id': "erlang"},
    'ElectronAgent': {'mode': True, 'id': "electron"},
    'DockerAgent': {'mode': True, 'id': "docker"},
    'DigitalOceanAgent': {'mode': True, 'id': "digitalocean"},
    'BitbucketAgent': {'mode': True, 'id': "bitbucket"},
    'AzureAgent': {'mode': True, 'id': "azure"},
    'FlutterAgent': {'mode': True, 'id': "flutter"},
    'YoutubeAgent': {'mode': True, 'id': "youtube"},
    'builderAgent': {'mode': True, 'id': "builder"},
}

# Model prefixes
MODEL_PREFIXES = {
    'gpt-4o': '@GPT-4o',
    'claude-sonnet-3.5': '@Claude-Sonnet-3.5',
    'gemini-pro': '@Gemini-PRO',
    'PythonAgent': '@python',
    'JavaAgent': '@java',
    'JavaScriptAgent': '@javascript',
    'HTMLAgent': '@html',
    'GoogleCloudAgent': '@googlecloud',
    'AndroidDeveloper': '@android',
    'SwiftDeveloper': '@swift',
    'Next.jsAgent': '@next.js',
    'MongoDBAgent': '@mongodb',
    'PyTorchAgent': '@pytorch',
    'ReactAgent': '@react',
    'XcodeAgent': '@xcode',
    'AngularJSAgent': '@angularjs',
    'HerokuAgent': '@heroku',
    'GodotAgent': '@godot',
    'GoAgent': '@go',
    'GitlabAgent': '@gitlab',
    'GitAgent': '@git',
    'blackboxai-pro': '@blackboxai-pro',
    'FlaskAgent': '@flask',
    'FirebaseAgent': '@firebase',
    'FastAPIAgent': '@fastapi',
    'ErlangAgent': '@erlang',
    'ElectronAgent': '@electron',
    'DockerAgent': '@docker',
    'DigitalOceanAgent': '@digitalocean',
    'BitbucketAgent': '@bitbucket',
    'AzureAgent': '@azure',
    'FlutterAgent': '@flutter',
    'YoutubeAgent': '@youtube',
    'builderAgent': '@builder',
}

# Model referers
MODEL_REFERERS = {
    "blackboxai": "/?model=blackboxai",
    "gpt-4o": "/?model=gpt-4o",
    "gemini-pro": "/?model=gemini-pro",
    "claude-sonnet-3.5": "/?model=claude-sonnet-3.5",
    "blackboxai-pro": "/?model=blackboxai-pro",
}