From f8e403a745c5caff31d7edb854dcba40eba3166d Mon Sep 17 00:00:00 2001 From: kqlio67 Date: Tue, 24 Sep 2024 13:23:53 +0300 Subject: Resolved merge conflicts --- g4f/models.py | 386 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 278 insertions(+), 108 deletions(-) (limited to 'g4f/models.py') diff --git a/g4f/models.py b/g4f/models.py index c985ddd3..f5980577 100644 --- a/g4f/models.py +++ b/g4f/models.py @@ -4,21 +4,20 @@ from dataclasses import dataclass from .Provider import IterListProvider, ProviderType from .Provider import ( - AiChatOnline, Airforce, Allyfy, Bing, Binjie, Bixin123, Blackbox, - ChatGot, - Chatgpt4Online, ChatGpt, Chatgpt4o, + Chatgpt4Online, + ChatGptEs, ChatgptFree, - CodeNews, DDG, DeepInfra, + DeepInfraChat, DeepInfraImage, Free2GPT, FreeChatgpt, @@ -31,6 +30,7 @@ from .Provider import ( HuggingFace, Koala, Liaobots, + LiteIcoding, MagickPen, MetaAI, Nexra, @@ -41,9 +41,7 @@ from .Provider import ( Reka, Replicate, ReplicateHome, - Snova, TeachAnything, - TwitterBio, Upstage, You, ) @@ -76,7 +74,6 @@ default = Model( FreeChatgpt, HuggingChat, Pizzagpt, - ChatgptFree, ReplicateHome, Upstage, Blackbox, @@ -84,6 +81,8 @@ default = Model( Binjie, Free2GPT, MagickPen, + DeepInfraChat, + LiteIcoding, ]) ) @@ -106,7 +105,7 @@ gpt_35_turbo = Model( name = 'gpt-3.5-turbo', base_provider = 'OpenAI', best_provider = IterListProvider([ - Allyfy, TwitterBio, Nexra, Bixin123, CodeNews, Airforce, + Allyfy, Nexra, Bixin123, Airforce, ]) ) @@ -115,7 +114,7 @@ gpt_4o = Model( name = 'gpt-4o', base_provider = 'OpenAI', best_provider = IterListProvider([ - Liaobots, Chatgpt4o, Airforce, + Liaobots, Airforce, Chatgpt4o, ChatGptEs, OpenaiChat ]) ) @@ -124,8 +123,8 @@ gpt_4o_mini = Model( name = 'gpt-4o-mini', base_provider = 'OpenAI', best_provider = IterListProvider([ - DDG, Liaobots, You, FreeNetfly, Pizzagpt, ChatgptFree, AiChatOnline, CodeNews, MagickPen, Airforce, - OpenaiChat, Koala, ChatGpt + DDG, ChatGptEs, You, FreeNetfly, Pizzagpt, LiteIcoding, MagickPen, Liaobots, Airforce, ChatgptFree, Koala, + OpenaiChat, ChatGpt ]) ) @@ -141,8 +140,26 @@ gpt_4 = Model( name = 'gpt-4', base_provider = 'OpenAI', best_provider = IterListProvider([ - Chatgpt4Online, Nexra, Binjie, Airforce, Bing, - gpt_4_turbo.best_provider, gpt_4o.best_provider, gpt_4o_mini.best_provider + Nexra, Binjie, Airforce, + gpt_4_turbo.best_provider, gpt_4o.best_provider, gpt_4o_mini.best_provider, + Chatgpt4Online, Bing, OpenaiChat, + ]) +) + +# o1 +o1 = Model( + name = 'o1', + base_provider = 'OpenAI', + best_provider = IterListProvider([ + Liaobots + ]) +) + +o1_mini = Model( + name = 'o1-mini', + base_provider = 'OpenAI', + best_provider = IterListProvider([ + Liaobots ]) ) @@ -161,40 +178,55 @@ meta = Model( best_provider = MetaAI ) +# llama 2 llama_2_13b = Model( name = "llama-2-13b", - base_provider = "Meta", + base_provider = "Meta Llama", best_provider = IterListProvider([Airforce]) ) +# llama 3 llama_3_8b = Model( name = "llama-3-8b", - base_provider = "Meta", + base_provider = "Meta Llama", best_provider = IterListProvider([Airforce, DeepInfra, Replicate]) ) llama_3_70b = Model( name = "llama-3-70b", - base_provider = "Meta", + base_provider = "Meta Llama", best_provider = IterListProvider([ReplicateHome, Airforce, DeepInfra, Replicate]) ) +llama_3 = Model( + name = "llama-3", + base_provider = "Meta Llama", + best_provider = IterListProvider([llama_3_8b.best_provider, llama_3_70b.best_provider]) +) + +# llama 3.1 llama_3_1_8b = Model( name = "llama-3.1-8b", - base_provider = "Meta", - best_provider = IterListProvider([Blackbox, Airforce, PerplexityLabs]) + base_provider = "Meta Llama", + best_provider = IterListProvider([Blackbox, DeepInfraChat, Airforce, PerplexityLabs]) ) llama_3_1_70b = Model( name = "llama-3.1-70b", - base_provider = "Meta", - best_provider = IterListProvider([DDG, HuggingChat, FreeGpt, Blackbox, TeachAnything, Free2GPT, Airforce, HuggingFace, PerplexityLabs]) + base_provider = "Meta Llama", + best_provider = IterListProvider([DDG, HuggingChat, Blackbox, FreeGpt, TeachAnything, Free2GPT, DeepInfraChat, Airforce, HuggingFace, PerplexityLabs]) ) llama_3_1_405b = Model( name = "llama-3.1-405b", - base_provider = "Meta", - best_provider = IterListProvider([Blackbox, Airforce]) + base_provider = "Meta Llama", + best_provider = IterListProvider([Blackbox, DeepInfraChat, Airforce]) +) + +llama_3_1 = Model( + name = "llama-3.1", + base_provider = "Meta Llama", + best_provider = IterListProvider([llama_3_1_8b.best_provider, llama_3_1_70b.best_provider, llama_3_1_405b.best_provider,]) ) @@ -202,19 +234,19 @@ llama_3_1_405b = Model( mistral_7b = Model( name = "mistral-7b", base_provider = "Mistral", - best_provider = IterListProvider([HuggingChat, Airforce, HuggingFace, DeepInfra]) + best_provider = IterListProvider([HuggingChat, DeepInfraChat, Airforce, HuggingFace, DeepInfra]) ) mixtral_8x7b = Model( name = "mixtral-8x7b", base_provider = "Mistral", - best_provider = IterListProvider([HuggingChat, DDG, ReplicateHome, TwitterBio, Airforce, DeepInfra, HuggingFace]) + best_provider = IterListProvider([HuggingChat, DDG, ReplicateHome, DeepInfraChat, Airforce, DeepInfra, HuggingFace]) ) mixtral_8x22b = Model( name = "mixtral-8x22b", base_provider = "Mistral", - best_provider = IterListProvider([Airforce]) + best_provider = IterListProvider([DeepInfraChat, Airforce]) ) @@ -225,13 +257,6 @@ mixtral_8x7b_dpo = Model( best_provider = IterListProvider([HuggingChat, Airforce, HuggingFace]) ) -yi_34b = Model( - name = 'yi-34b', - base_provider = 'NousResearch', - best_provider = IterListProvider([Airforce]) -) - - ### Microsoft ### phi_3_mini_4k = Model( name = "phi-3-mini-4k", @@ -239,38 +264,37 @@ phi_3_mini_4k = Model( best_provider = IterListProvider([HuggingChat, HuggingFace]) ) +phi_3_medium_4k = Model( + name = "phi-3-medium-4k", + base_provider = "Microsoft", + best_provider = IterListProvider([DeepInfraChat]) +) -### Google ### + +### Google DeepMind ### # gemini gemini_pro = Model( name = 'gemini-pro', - base_provider = 'Google', - best_provider = IterListProvider([GeminiPro, ChatGot, Liaobots, Airforce]) + base_provider = 'Google DeepMind', + best_provider = IterListProvider([GeminiPro, LiteIcoding, Blackbox, Liaobots, Airforce]) ) gemini_flash = Model( name = 'gemini-flash', - base_provider = 'Google', + base_provider = 'Google DeepMind', best_provider = IterListProvider([Blackbox, Liaobots, Airforce]) ) gemini = Model( name = 'gemini', - base_provider = 'Google', + base_provider = 'Google DeepMind', best_provider = IterListProvider([ Gemini, gemini_flash.best_provider, gemini_pro.best_provider ]) ) - # gemma -gemma_2b = Model( - name = 'gemma-2b', - base_provider = 'Google', - best_provider = IterListProvider([ReplicateHome, Airforce]) -) - gemma_2b_9b = Model( name = 'gemma-2b-9b', base_provider = 'Google', @@ -280,9 +304,19 @@ gemma_2b_9b = Model( gemma_2b_27b = Model( name = 'gemma-2b-27b', base_provider = 'Google', - best_provider = IterListProvider([Airforce]) + best_provider = IterListProvider([DeepInfraChat, Airforce]) ) +gemma_2b = Model( + name = 'gemma-2b', + base_provider = 'Google', + best_provider = IterListProvider([ + ReplicateHome, Airforce, + gemma_2b_9b.best_provider, gemma_2b_27b.best_provider, + ]) +) + + ### Anthropic ### claude_2 = Model( name = 'claude-2', @@ -302,6 +336,7 @@ claude_2_1 = Model( best_provider = IterListProvider([Liaobots]) ) +# claude 3 claude_3_opus = Model( name = 'claude-3-opus', base_provider = 'Anthropic', @@ -314,19 +349,38 @@ claude_3_sonnet = Model( best_provider = IterListProvider([Liaobots]) ) +claude_3_haiku = Model( + name = 'claude-3-haiku', + base_provider = 'Anthropic', + best_provider = IterListProvider([DDG, Liaobots]) +) + +claude_3 = Model( + name = 'claude-3', + base_provider = 'Anthropic', + best_provider = IterListProvider([ + claude_3_opus.best_provider, claude_3_sonnet.best_provider, claude_3_haiku.best_provider + ]) +) + +# claude 3.5 claude_3_5_sonnet = Model( - name = 'claude-3-5-sonnet', + name = 'claude-3.5-sonnet', base_provider = 'Anthropic', - best_provider = IterListProvider([Liaobots]) + best_provider = IterListProvider([Blackbox, Liaobots]) ) -claude_3_haiku = Model( - name = 'claude-3-haiku', +claude_3_5 = Model( + name = 'claude-3.5', base_provider = 'Anthropic', - best_provider = IterListProvider([DDG, Liaobots]) + best_provider = IterListProvider([ + LiteIcoding, + claude_3_5_sonnet.best_provider + ]) ) + ### Reka AI ### reka_core = Model( name = 'reka-core', @@ -335,11 +389,11 @@ reka_core = Model( ) -### Blackbox ### +### Blackbox AI ### blackbox = Model( name = 'blackbox', - base_provider = 'Blackbox', - best_provider = Blackbox + base_provider = 'Blackbox AI', + best_provider = IterListProvider([Blackbox]) ) @@ -366,6 +420,7 @@ sparkdesk_v1_1 = Model( best_provider = IterListProvider([FreeChatgpt, Airforce]) ) + ### Qwen ### qwen_1_5_14b = Model( name = 'qwen-1.5-14b', @@ -388,7 +443,7 @@ qwen_1_5_110b = Model( qwen_2_72b = Model( name = 'qwen-2-72b', base_provider = 'Qwen', - best_provider = IterListProvider([Airforce]) + best_provider = IterListProvider([DeepInfraChat, Airforce]) ) qwen_turbo = Model( @@ -397,6 +452,14 @@ qwen_turbo = Model( best_provider = IterListProvider([Bixin123]) ) +qwen = Model( + name = 'qwen', + base_provider = 'Qwen', + best_provider = IterListProvider([ + qwen_1_5_14b.best_provider, qwen_1_5_72b.best_provider, qwen_1_5_110b.best_provider, qwen_2_72b.best_provider, qwen_turbo.best_provider + ]) +) + ### Zhipu AI ### glm_3_6b = Model( @@ -415,11 +478,11 @@ glm_4 = Model( name = 'glm-4', base_provider = 'Zhipu AI', best_provider = IterListProvider([ - CodeNews, glm_3_6b.best_provider, glm_4_9b.best_provider ]) ) + ### 01-ai ### yi_1_5_9b = Model( name = 'yi-1.5-9b', @@ -427,6 +490,13 @@ yi_1_5_9b = Model( best_provider = IterListProvider([FreeChatgpt]) ) +yi_34b = Model( + name = 'yi-34b', + base_provider = '01-ai', + best_provider = IterListProvider([Airforce]) +) + + ### Upstage ### solar_1_mini = Model( name = 'solar-1-mini', @@ -440,47 +510,38 @@ solar_10_7b = Model( best_provider = Airforce ) +solar_pro = Model( + name = 'solar-pro', + base_provider = 'Upstage', + best_provider = Upstage +) + -### Pi ### +### Inflection ### pi = Model( name = 'pi', - base_provider = 'inflection', + base_provider = 'Inflection', best_provider = Pi ) -### SambaNova ### -samba_coe_v0_1 = Model( - name = 'samba-coe-v0.1', - base_provider = 'SambaNova', - best_provider = Snova -) - -### Trong-Hieu Nguyen-Mau ### -v1olet_merged_7b = Model( - name = 'v1olet-merged-7b', - base_provider = 'Trong-Hieu Nguyen-Mau', - best_provider = Snova -) - -### Macadeliccc ### -westlake_7b_v2 = Model( - name = 'westlake-7b-v2', - base_provider = 'Macadeliccc', - best_provider = Snova -) - ### DeepSeek ### deepseek = Model( name = 'deepseek', base_provider = 'DeepSeek', - best_provider = IterListProvider([CodeNews, Airforce]) + best_provider = IterListProvider([Airforce]) ) ### WizardLM ### +wizardlm_2_7b = Model( + name = 'wizardlm-2-7b', + base_provider = 'WizardLM', + best_provider = IterListProvider([DeepInfraChat]) +) + wizardlm_2_8x22b = Model( name = 'wizardlm-2-8x22b', base_provider = 'WizardLM', - best_provider = Airforce + best_provider = IterListProvider([DeepInfraChat, Airforce]) ) ### Together ### @@ -490,6 +551,7 @@ sh_n_7b = Model( best_provider = Airforce ) + ### Yorickvp ### llava_13b = Model( name = 'llava-13b', @@ -497,6 +559,62 @@ llava_13b = Model( best_provider = ReplicateHome ) + +### OpenBMB ### +minicpm_llama_3_v2_5 = Model( + name = 'minicpm-llama-3-v2.5', + base_provider = 'OpenBMB', + best_provider = DeepInfraChat +) + + +### Lzlv ### +lzlv_70b = Model( + name = 'lzlv-70b', + base_provider = 'Lzlv', + best_provider = DeepInfraChat +) + + +### OpenChat ### +openchat_3_6_8b = Model( + name = 'openchat-3.6-8b', + base_provider = 'OpenChat', + best_provider = DeepInfraChat +) + + +### Phind ### +phind_codellama_34b_v2 = Model( + name = 'phind-codellama-34b-v2', + base_provider = 'Phind', + best_provider = DeepInfraChat +) + + +### Cognitive Computations ### +dolphin_2_9_1_llama_3_70b = Model( + name = 'dolphin-2.9.1-llama-3-70b', + base_provider = 'Cognitive Computations', + best_provider = DeepInfraChat +) + + +### x.ai ### +grok_2 = Model( + name = 'grok-2', + base_provider = 'x.ai', + best_provider = Liaobots +) + +grok_2_mini = Model( + name = 'grok-2-mini', + base_provider = 'x.ai', + best_provider = Liaobots +) + + + ############# ### Image ### ############# @@ -516,10 +634,11 @@ sd_3 = Model( ) + ### Playground ### playground_v2_5 = Model( name = 'playground-v2.5', - base_provider = 'Stability AI', + base_provider = 'Playground AI', best_provider = IterListProvider([ReplicateHome]) ) @@ -528,7 +647,7 @@ playground_v2_5 = Model( flux = Model( name = 'flux', base_provider = 'Flux AI', - best_provider = IterListProvider([Airforce]) + best_provider = IterListProvider([Airforce, Blackbox]) ) @@ -567,6 +686,13 @@ flux_pixel = Model( ) +flux_4o = Model( + name = 'flux-4o', + base_provider = 'Flux AI', + best_provider = IterListProvider([Airforce]) + +) + flux_schnell = Model( name = 'flux-schnell', base_provider = 'Flux AI', @@ -574,18 +700,28 @@ flux_schnell = Model( ) + ### ### -dalle = Model( - name = 'dalle', +dalle_2 = Model( + name = 'dalle-2', base_provider = '', best_provider = IterListProvider([Nexra]) +) +dalle_3 = Model( + name = 'dalle-3', + base_provider = '', + best_provider = IterListProvider([Airforce]) + ) -dalle_2 = Model( - name = 'dalle-2', +dalle = Model( + name = 'dalle', base_provider = '', - best_provider = IterListProvider([Nexra]) + best_provider = IterListProvider([ + Nexra, + dalle_2.best_provider, dalle_3.best_provider, + ]) ) @@ -596,6 +732,7 @@ dalle_mini = Model( ) +### ### emi = Model( name = 'emi', base_provider = '', @@ -631,10 +768,14 @@ class ModelUtils: 'gpt-3.5-turbo': gpt_35_turbo, # gpt-4 -'gpt-4o' : gpt_4o, -'gpt-4o-mini' : gpt_4o_mini, -'gpt-4' : gpt_4, -'gpt-4-turbo' : gpt_4_turbo, +'gpt-4o': gpt_4o, +'gpt-4o-mini': gpt_4o_mini, +'gpt-4': gpt_4, +'gpt-4-turbo': gpt_4_turbo, + +# o1 +'o1': o1, +'o1-mini': o1_mini, ### Meta ### @@ -644,10 +785,12 @@ class ModelUtils: 'llama-2-13b': llama_2_13b, # llama-3 +'llama-3': llama_3, 'llama-3-8b': llama_3_8b, 'llama-3-70b': llama_3_70b, # llama-3.1 +'llama-3.1': llama_3_1, 'llama-3.1-8b': llama_3_1_8b, 'llama-3.1-70b': llama_3_1_70b, 'llama-3.1-405b': llama_3_1_405b, @@ -667,6 +810,7 @@ class ModelUtils: ### Microsoft ### 'phi-3-mini-4k': phi_3_mini_4k, +'phi_3_medium-4k': phi_3_medium_4k, ### Google ### @@ -685,18 +829,23 @@ class ModelUtils: 'claude-2': claude_2, 'claude-2.0': claude_2_0, 'claude-2.1': claude_2_1, - + +# claude 3 +'claude-3': claude_3, 'claude-3-opus': claude_3_opus, 'claude-3-sonnet': claude_3_sonnet, 'claude-3-haiku': claude_3_haiku, -'claude-3-5-sonnet': claude_3_5_sonnet, + +# claude 3.5 +'claude-3.5': claude_3_5, +'claude-3.5-sonnet': claude_3_5_sonnet, ### Reka AI ### 'reka-core': reka_core, -### Blackbox ### +### Blackbox AI ### 'blackbox': blackbox, @@ -717,6 +866,7 @@ class ModelUtils: ### Qwen ### +'qwen': qwen, 'qwen-1.5-14b': qwen_1_5_14b, 'qwen-1.5-72b': qwen_1_5_72b, 'qwen-1.5-110b': qwen_1_5_110b, @@ -737,24 +887,12 @@ class ModelUtils: ### Upstage ### 'solar-1-mini': solar_1_mini, 'solar-10-7b': solar_10_7b, +'solar-pro': solar_pro, -### Pi ### +### Inflection ### 'pi': pi, - -### SambaNova ### -'samba-coe-v0.1': samba_coe_v0_1, - - -### Trong-Hieu Nguyen-Mau ### -'v1olet-merged-7b': v1olet_merged_7b, - - -### Macadeliccc ### -'westlake-7b-v2': westlake_7b_v2, - - ### DeepSeek ### 'deepseek': deepseek, @@ -765,6 +903,36 @@ class ModelUtils: ### Yorickvp ### 'llava-13b': llava_13b, + + +### WizardLM ### +'wizardlm-2-7b': wizardlm_2_7b, +'wizardlm-2-8x22b': wizardlm_2_8x22b, + + +### OpenBMB ### +'minicpm-llama-3-v2.5': minicpm_llama_3_v2_5, + + +### Lzlv ### +'lzlv-70b': lzlv_70b, + + +### OpenChat ### +'openchat-3.6-8b': openchat_3_6_8b, + + +### Phind ### +'phind-codellama-34b-v2': phind_codellama_34b_v2, + + +### Cognitive Computations ### +'dolphin-2.9.1-llama-3-70b': dolphin_2_9_1_llama_3_70b, + + +### x.ai ### +'grok-2': grok_2, +'grok-2-mini': grok_2_mini, @@ -788,12 +956,14 @@ class ModelUtils: 'flux-3d': flux_3d, 'flux-disney': flux_disney, 'flux-pixel': flux_pixel, +'flux-4o': flux_4o, 'flux-schnell': flux_schnell, ### ### 'dalle': dalle, 'dalle-2': dalle_2, +'dalle-3': dalle_3, 'dalle-mini': dalle_mini, 'emi': emi, 'any-dark': any_dark, -- cgit v1.2.3