|
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', |
|
'cache-control': 'no-cache', |
|
'origin': BASE_URL, |
|
'pragma': 'no-cache', |
|
'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.69"', |
|
'sec-ch-ua-full-version-list': '"Google Chrome";v="131.0.6778.69", "Chromium";v="131.0.6778.69", "Not_A Brand";v="24.0.0.0"', |
|
'sec-ch-ua-mobile': '?0', |
|
'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', |
|
} |
|
|
|
|
|
|
|
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": "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": "PythonAgent", "name": "PythonAgent"}, |
|
{"id": "JavaAgent", "name": "JavaAgent"}, |
|
{"id": "JavaScriptAgent", "name": "JavaScriptAgent"}, |
|
{"id": "HTMLAgent", "name": "HTMLAgent"}, |
|
{"id": "GoogleCloudAgent", "name": "GoogleCloudAgent"}, |
|
{"id": "AndroidDeveloper", "name": "AndroidDeveloper"}, |
|
{"id": "SwiftDeveloper", "name": "SwiftDeveloper"}, |
|
{"id": "Next.jsAgent", "name": "Next.jsAgent"}, |
|
{"id": "MongoDBAgent", "name": "MongoDBAgent"}, |
|
{"id": "PyTorchAgent", "name": "PyTorchAgent"}, |
|
{"id": "ReactAgent", "name": "ReactAgent"}, |
|
{"id": "XcodeAgent", "name": "XcodeAgent"}, |
|
{"id": "AngularJSAgent", "name": "AngularJSAgent"}, |
|
{"id": "HerokuAgent", "name": "HerokuAgent"}, |
|
{"id": "GodotAgent", "name": "GodotAgent"}, |
|
{"id": "GoAgent", "name": "GoAgent"}, |
|
{"id": "GitlabAgent", "name": "GitlabAgent"}, |
|
{"id": "GitAgent", "name": "GitAgent"}, |
|
{"id": "RepoMap", "name": "RepoMap"}, |
|
{"id": "gemini-1.5-pro-latest", "name": "gemini-pro"}, |
|
{"id": "gemini-1.5-pro", "name": "gemini-1.5-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": "FlaskAgent", "name": "FlaskAgent"}, |
|
{"id": "FirebaseAgent", "name": "FirebaseAgent"}, |
|
{"id": "FastAPIAgent", "name": "FastAPIAgent"}, |
|
{"id": "ErlangAgent", "name": "ErlangAgent"}, |
|
{"id": "ElectronAgent", "name": "ElectronAgent"}, |
|
{"id": "DockerAgent", "name": "DockerAgent"}, |
|
{"id": "DigitalOceanAgent", "name": "DigitalOceanAgent"}, |
|
{"id": "BitbucketAgent", "name": "BitbucketAgent"}, |
|
{"id": "AzureAgent", "name": "AzureAgent"}, |
|
{"id": "FlutterAgent", "name": "FlutterAgent"}, |
|
{"id": "YoutubeAgent", "name": "YoutubeAgent"}, |
|
{"id": "builderAgent", "name": "builderAgent"}, |
|
] |
|
|
|
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", |
|
"gemini-pro": "gemini-pro", |
|
"gemini-1.5-flash": "gemini-1.5-flash", |
|
"claude-sonnet-3.5": "claude-sonnet-3.5", |
|
"PythonAgent": "PythonAgent", |
|
"JavaAgent": "JavaAgent", |
|
"JavaScriptAgent": "JavaScriptAgent", |
|
"HTMLAgent": "HTMLAgent", |
|
"GoogleCloudAgent": "GoogleCloudAgent", |
|
"AndroidDeveloper": "AndroidDeveloper", |
|
"SwiftDeveloper": "SwiftDeveloper", |
|
"Next.jsAgent": "Next.jsAgent", |
|
"MongoDBAgent": "MongoDBAgent", |
|
"PyTorchAgent": "PyTorchAgent", |
|
"ReactAgent": "ReactAgent", |
|
"XcodeAgent": "XcodeAgent", |
|
"AngularJSAgent": "AngularJSAgent", |
|
"HerokuAgent": "HerokuAgent", |
|
"GodotAgent": "GodotAgent", |
|
"GoAgent": "GoAgent", |
|
"GitlabAgent": "GitlabAgent", |
|
"GitAgent": "GitAgent", |
|
"RepoMap": "RepoMap", |
|
|
|
"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-1.5-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", |
|
|
|
|
|
"FlaskAgent": "FlaskAgent", |
|
"FirebaseAgent": "FirebaseAgent", |
|
"FastAPIAgent": "FastAPIAgent", |
|
"ErlangAgent": "ErlangAgent", |
|
"ElectronAgent": "ElectronAgent", |
|
"DockerAgent": "DockerAgent", |
|
"DigitalOceanAgent": "DigitalOceanAgent", |
|
"BitbucketAgent": "BitbucketAgent", |
|
"AzureAgent": "AzureAgent", |
|
"FlutterAgent": "FlutterAgent", |
|
"YoutubeAgent": "YoutubeAgent", |
|
"builderAgent": "builderAgent", |
|
} |
|
|
|
|
|
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"}, |
|
} |
|
|
|
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 Agent"}, |
|
'JavaAgent': {'mode': True, 'id': "Java Agent"}, |
|
'JavaScriptAgent': {'mode': True, 'id': "JavaScript Agent"}, |
|
'HTMLAgent': {'mode': True, 'id': "HTML Agent"}, |
|
'GoogleCloudAgent': {'mode': True, 'id': "Google Cloud Agent"}, |
|
'AndroidDeveloper': {'mode': True, 'id': "Android Developer"}, |
|
'SwiftDeveloper': {'mode': True, 'id': "Swift Developer"}, |
|
'Next.jsAgent': {'mode': True, 'id': "Next.js Agent"}, |
|
'MongoDBAgent': {'mode': True, 'id': "MongoDB Agent"}, |
|
'PyTorchAgent': {'mode': True, 'id': "PyTorch Agent"}, |
|
'ReactAgent': {'mode': True, 'id': "React Agent"}, |
|
'XcodeAgent': {'mode': True, 'id': "Xcode Agent"}, |
|
'AngularJSAgent': {'mode': True, 'id': "AngularJS Agent"}, |
|
'HerokuAgent': {'mode': True, 'id': "HerokuAgent"}, |
|
'GodotAgent': {'mode': True, 'id': "GodotAgent"}, |
|
'GoAgent': {'mode': True, 'id': "GoAgent"}, |
|
'GitlabAgent': {'mode': True, 'id': "GitlabAgent"}, |
|
'GitAgent': {'mode': True, 'id': "GitAgent"}, |
|
'RepoMap': {'mode': True, 'id': "repomap"}, |
|
|
|
|
|
'FlaskAgent': {'mode': True, 'id': "FlaskAgent"}, |
|
'FirebaseAgent': {'mode': True, 'id': "FirebaseAgent"}, |
|
'FastAPIAgent': {'mode': True, 'id': "FastAPIAgent"}, |
|
'ErlangAgent': {'mode': True, 'id': "ErlangAgent"}, |
|
'ElectronAgent': {'mode': True, 'id': "ElectronAgent"}, |
|
'DockerAgent': {'mode': True, 'id': "DockerAgent"}, |
|
'DigitalOceanAgent': {'mode': True, 'id': "DigitalOceanAgent"}, |
|
'BitbucketAgent': {'mode': True, 'id': "BitbucketAgent"}, |
|
'AzureAgent': {'mode': True, 'id': "AzureAgent"}, |
|
'FlutterAgent': {'mode': True, 'id': "FlutterAgent"}, |
|
'YoutubeAgent': {'mode': True, 'id': "YoutubeAgent"}, |
|
'builderAgent': {'mode': True, 'id': "builderAgent"}, |
|
} |
|
|
|
|
|
MODEL_PREFIXES = { |
|
'gpt-4o': '@GPT-4o', |
|
'gemini-pro': '@Gemini-PRO', |
|
'claude-sonnet-3.5': '@Claude-Sonnet-3.5', |
|
'PythonAgent': '@Python Agent', |
|
'JavaAgent': '@Java Agent', |
|
'JavaScriptAgent': '@JavaScript Agent', |
|
'HTMLAgent': '@HTML Agent', |
|
'GoogleCloudAgent': '@Google Cloud Agent', |
|
'AndroidDeveloper': '@Android Developer', |
|
'SwiftDeveloper': '@Swift Developer', |
|
'Next.jsAgent': '@Next.js Agent', |
|
'MongoDBAgent': '@MongoDB Agent', |
|
'PyTorchAgent': '@PyTorch Agent', |
|
'ReactAgent': '@React Agent', |
|
'XcodeAgent': '@Xcode Agent', |
|
'AngularJSAgent': '@AngularJS Agent', |
|
'HerokuAgent': '@Heroku Agent', |
|
'GodotAgent': '@Godot Agent', |
|
'GoAgent': '@Go Agent', |
|
'GitlabAgent': '@Gitlab Agent', |
|
'GitAgent': '@Git Agent', |
|
'blackboxai-pro': '@BLACKBOXAI-PRO', |
|
'flux': '@Image Generation', |
|
|
|
|
|
'FlaskAgent': '@Flask Agent', |
|
'FirebaseAgent': '@Firebase Agent', |
|
'FastAPIAgent': '@FastAPI Agent', |
|
'ErlangAgent': '@Erlang Agent', |
|
'ElectronAgent': '@Electron Agent', |
|
'DockerAgent': '@Docker Agent', |
|
'DigitalOceanAgent': '@DigitalOcean Agent', |
|
'BitbucketAgent': '@Bitbucket Agent', |
|
'AzureAgent': '@Azure Agent', |
|
'FlutterAgent': '@Flutter Agent', |
|
'YoutubeAgent': '@Youtube Agent', |
|
'builderAgent': '@builder Agent', |
|
} |
|
|
|
|
|
MODEL_REFERERS = { |
|
"blackboxai": "/?model=blackboxai", |
|
"gpt-4o": "/?model=gpt-4o", |
|
"gemini-pro": "/?model=gemini-pro", |
|
"claude-sonnet-3.5": "/?model=claude-sonnet-3.5", |
|
|
|
} |
|
|