Metadata-Version: 2.2
Name: toolmate-sdk
Version: 0.0.6
Summary: ToolMate-SDK: a software developement kit for developing agentic AI applications that support 13 LLM backends and integrate tools and agents. (Developer: Eliran Wong)
Home-page: https://github.com/eliranwong/toolmate-sdk
Author: Eliran Wong
Author-email: support@toolmate.ai
License: GNU General Public License (GPL)
Project-URL: Source, https://github.com/eliranwong/toolmate-sdk
Project-URL: Tracker, https://github.com/eliranwong/toolmate-sdk/issues
Project-URL: Documentation, https://github.com/eliranwong/toolmate-sdk/wiki
Project-URL: Funding, https://www.paypal.me/toolmate
Keywords: toolmate ai sdk anthropic azure chatgpt deepseek genai github googleai groq llamacpp mistral ollama openai vertexai xai
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: End Users/Desktop
Classifier: Topic :: Utilities
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Build Tools
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8, <3.13
License-File: LICENSE
Requires-Dist: prompt_toolkit
Requires-Dist: ollama>=0.4.7
Requires-Dist: groq>=0.15.0
Requires-Dist: mistralai>=1.5.0
Requires-Dist: openai>=1.60.2
Requires-Dist: tiktoken>=0.8.0
Requires-Dist: anthropic>=0.45.2
Provides-Extra: genai
Requires-Dist: google-genai>=0.6.0; extra == "genai"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: project-url
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# ToolMate AI - SDK

ToolMate-SDK: a software developement kit for developing agentic AI applications that support 13 LLM backends and integrate tools and agents. (Developer: Eliran Wong)

Supported backends: anthropic, azure, custom, deepseek, genai, github, googleai, groq, llamacpp, mistral, ollama, openai, vertexai, xai

# A Sibling Project

This SDK incorporates the best aspects of our favorite project, [Toolmate AI](https://github.com/eliranwong/toolmate), to create a library aimed at further advancing the development of AI applications.

# Supported backends

`anthropic` - [Anthropic API](https://console.anthropic.com/)

`azure` - [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference)

`custom` - any openai-compatible backends

`deepseek` - [DeepSeek API](https://platform.deepseek.com/)

`genai` - [Vertex AI](https://cloud.google.com/vertex-ai) or [Google AI](https://ai.google.dev/)

`github` - [Github API](https://github.com/marketplace/models/azure-openai/gpt-4o)

`googleai` - [Google AI](https://ai.google.dev/)

`groq` - [Groq Cloud API](https://console.groq.com)

`llamacpp` - [Llama.cpp Server](https://github.com/ggerganov/llama.cpp)

`mistral` - [Mistral API](https://console.mistral.ai/api-keys/)

`ollama` - [Ollama](https://ollama.com/)

`openai` - [OpenAI API](https://platform.openai.com/)

`vertexai` - [Vertex AI](https://cloud.google.com/vertex-ai)

`xai` - [XAI API](https://x.ai/api)

# Installation

Basic:

> pip install --upgrade toolmate-sdk

Basic installation supports all AI backends mentioned above, except for `vertexai`.

Extras:

We support Vertex AI via [Google GenAI SDK](https://pypi.org/project/google-genai/).  As this package supports most platforms, except for Android Termux, we separate this package `google-genai` as an extra.  To support Vertex AI with `toolmate-sdk`, install with running:

> pip install --upgrade toolmate-sdk[genai]

# Usage

This SDK is designed to provide a single function for interacting with all AI backends, delivering a unified experience for generating AI responses. The main APIs are provided with the function `generate` located in this [file](https://github.com/eliranwong/toolmate-sdk/blob/main/toolmate_sdk/__init__.py#L28).

Find documentation at https://github.com/eliranwong/toolmate-sdk/tree/main/toolmate_sdk/docs/README.md

# Examples

An example, assuming [Ollama](https://ollama.com/) is installed:

'''
from toolmate_sdk import generate

generate("What is generate AI?")
'''

Read more examples at:

https://github.com/eliranwong/toolmate-sdk/tree/main/toolmate-sdk/examples

# TODO

* add documentation
* add examples
* convert availble ToolMate AI tools into tools that runable with this SDK
* added built-in system messages
* added built-in predefined contexts
* added built-in prompts
* add cli options for running simple inference, tools or testing
* check backends that use getParameterSchema
* add agent to handle code generation
