summaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-04-26 06:57:23 +0800
committerGitHub <noreply@github.com>2024-04-26 06:57:23 +0800
commita21e1213ccdd11d76f6338436c431e459ab8e574 (patch)
tree88a49c91c70b71c14c15d79b4902063906545d24 /src/client
parent503ec98bd14fd833c5687790234f550a24b01107 (diff)
downloadaichat-a21e1213ccdd11d76f6338436c431e459ab8e574.tar.gz
feat: support perplexity (#444)
Diffstat (limited to 'src/client')
-rw-r--r--src/client/mod.rs1
-rw-r--r--src/client/perplexity.rs19
2 files changed, 20 insertions, 0 deletions
diff --git a/src/client/mod.rs b/src/client/mod.rs
index ff7ea42..f7d448f 100644
--- a/src/client/mod.rs
+++ b/src/client/mod.rs
@@ -28,6 +28,7 @@ register_client!(
(claude, "claude", ClaudeConfig, ClaudeClient),
(mistral, "mistral", MistralConfig, MistralClient),
(cohere, "cohere", CohereConfig, CohereClient),
+ (perplexity, "perplexity", PerplexityConfig, PerplexityClient),
(groq, "groq", GroqConfig, GroqClient),
(ollama, "ollama", OllamaConfig, OllamaClient),
(ernie, "ernie", ErnieConfig, ErnieClient),
diff --git a/src/client/perplexity.rs b/src/client/perplexity.rs
new file mode 100644
index 0000000..99b2565
--- /dev/null
+++ b/src/client/perplexity.rs
@@ -0,0 +1,19 @@
+openai_compatible_module!(
+ PerplexityConfig,
+ PerplexityClient,
+ "https://api.perplexity.ai",
+ [
+ // https://docs.perplexity.ai/docs/model-cards
+ ("sonar-small-chat", "text", 16384),
+ ("sonar-small-online", "text", 12000),
+ ("sonar-medium-chat", "text", 16384),
+ ("sonar-medium-online", "text", 12000),
+
+ ("llama-3-8b-instruct", "text", 8192),
+ ("llama-3-70b-instruct", "text", 8192),
+ ("codellama-70b-instruct", "text", 16384),
+ ("mistral-7b-instruct", "text", 16384),
+ ("mixtral-8x7b-instruct", "text", 16384),
+ ("mixtral-8x22b-instruct", "text", 16384),
+ ]
+);