Skip to content

Commit

Permalink
Add model providers and Supported functions svilupp#121
Browse files Browse the repository at this point in the history
  • Loading branch information
adarshpalaskar1 committed Apr 20, 2024
1 parent d61cb67 commit be5a678
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ makedocs(;
"Home" => "index.md",
"Getting Started" => "getting_started.md",
"How It Works" => "how_it_works.md",
"Model Providers and Supported Functions" => "model_providers_and_supported_functions.md",
"Examples" => [
"Various examples" => "examples/readme_examples.md",
"Using AITemplates" => "examples/working_with_aitemplates.md",
Expand Down
30 changes: 30 additions & 0 deletions docs/src/model_providers_and_supported_functions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
```@meta
CurrentModule = PromptingTools
```

# Model Providers and Supported Functions

PromptingTools.jl routes AI calls through the use of subtypes of AbstractPromptSchema, which determine how data is formatted and where it is sent. (For example, OpenAI models have the corresponding subtype AbstractOpenAISchema, having the corresponding schemas - OpenAISchema, CustomOpenAISchema, etc.) This ensures that the data is correctly formatted for the specific AI model provider.

Below is an overview of the model providers supported by PromptingTools.jl, along with the corresponding schema information.

| Abstract Schema | Schema | Model Provider | aigenerate | aiembed | aiclassify | aiextract | aiscan | aiimage |
|-------------------------|---------------------------|----------------------------------------|------------|---------|------------|-----------|--------|---------|
| AbstractOpenAISchema | OpenAISchema | OpenAI |||||||
| AbstractOpenAISchema | CustomOpenAISchema* | Any OpenAI-compatible API (eg, vLLM)* |||||||
| AbstractOpenAISchema | LocalServerOpenAISchema** | Any OpenAI-compatible Local server** |||||||
| AbstractOpenAISchema | MistralOpenAISchema | Mistral AI |||||||
| AbstractOpenAISchema | DatabricksOpenAISchema | Databricks |||||||
| AbstractOpenAISchema | FireworksOpenAISchema | Fireworks AI |||||||
| AbstractOpenAISchema | TogetherOpenAISchema | Together AI |||||||
| AbstractOllamaSchema | OllamaSchema | Ollama |||||||
| AbstractManagedSchema | AbstractOllamaManagedSchema | Ollama |||||||
| AbstractAnthropicSchema | AnthropicSchema | Anthropic |||||||
| AbstractGoogleSchema | GoogleSchema | Google Gemini |||||||


\* Catch-all implementation - Requires providing a `url` with `api_kwargs` and corresponding API key.

\*\* This schema is a flavor of CustomOpenAISchema with a `url` key preset by global Preference key `LOCAL_SERVER`.

For more detailed explanations of the functions and schema information, refer to [How It Works](https://siml.earth/PromptingTools.jl/dev/how_it_works#ai*-Functions-Overview).

0 comments on commit be5a678

Please sign in to comment.