{"id":24966831,"url":"https://github.com/eliranwong/agentmake","last_synced_at":"2025-10-24T15:38:26.903Z","repository":{"id":281548934,"uuid":"942947279","full_name":"eliranwong/agentmake","owner":"eliranwong","description":"AgentMake AI: a kit for developing agentic AI applications that support 16 AI backends and and work with 7 agentic components, such as tools and agents. (Developer: Eliran Wong) Supported backends: anthropic, azure, azure_any, cohere, custom, deepseek, genai, github, github_any, googleai, groq, llamacpp, mistral, ollama, openai, vertexai, xai","archived":false,"fork":false,"pushed_at":"2025-04-08T08:22:52.000Z","size":15473,"stargazers_count":10,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T02:07:22.900Z","etag":null,"topics":["ai","anthropic","azure","chatgpt","claude","cohere","deepseek","gemini","genai","googleai","grok","groq","llama","mistral","ollama","openai","reasoning","toolmate","vertex-ai","xai"],"latest_commit_sha":null,"homepage":"https://toolmate.ai","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eliranwong.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-04T23:51:37.000Z","updated_at":"2025-04-09T20:52:12.000Z","dependencies_parsed_at":"2025-03-28T11:38:26.587Z","dependency_job_id":null,"html_url":"https://github.com/eliranwong/agentmake","commit_stats":null,"previous_names":["eliranwong/agentmake"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliranwong%2Fagentmake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliranwong%2Fagentmake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliranwong%2Fagentmake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliranwong%2Fagentmake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eliranwong","download_url":"https://codeload.github.com/eliranwong/agentmake/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248328165,"owners_count":21085261,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","anthropic","azure","chatgpt","claude","cohere","deepseek","gemini","genai","googleai","grok","groq","llama","mistral","ollama","openai","reasoning","toolmate","vertex-ai","xai"],"created_at":"2025-02-03T12:21:42.600Z","updated_at":"2025-10-24T15:38:26.896Z","avatar_url":"https://github.com/eliranwong.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AgentMake AI\n\nAgentMake AI: an agent developement kit (ADK) for developing agentic AI applications that support 16 AI backends and work with 7 agentic components, such as tools and agents. (Developer: Eliran Wong)\n\nSupported backends: anthropic, azure, cohere, custom, deepseek, genai, github, googleai, groq, llamacpp, mistral, ollama, openai, vertexai, xai\n\n# Audio Introduction\n\n[![Watch the video](https://img.youtube.com/vi/JyJxrvrJyqM/maxresdefault.jpg)](https://youtu.be/JyJxrvrJyqM)\n\n[9-min introduction](https://youtu.be/JyJxrvrJyqM) [24-min introduction](https://youtu.be/NMmuuWm2ixY)\n\n# Latest projects\n\nThe following two projects are in active development. Both are powered by AgentMake AI and [AgentMake AI MCP Servers](https://github.com/eliranwong/agentmakemcp):\n\n[ComputeMate AI](https://github.com/eliranwong/computemate)\n\n[BibleMate AI](https://github.com/eliranwong/biblemate)\n\n# Sibling Projects\n\nThis SDK incorporates the best aspects of our favorite projects, [LetMeDoIt AI](https://github.com/eliranwong/letmedoit), [Toolmate AI](https://github.com/eliranwong/toolmate) and [TeamGen AI](https://github.com/eliranwong/teamgenai), to create a library aimed at further advancing the development of agentic AI applications.\n\nThe `agentmake` ecosystem is further extended by two companion projects:\n\nWebUI - [agentmakestudio](https://github.com/eliranwong/agentmakestudio)\n\nMCP Servers - [agentmakemcp](https://github.com/eliranwong/agentmakemcp)\n\n# Supported Platforms\n\nWindows, macOS, Linux, ChromeOS, Android via [Termux Terminal](https://github.com/eliranwong/agentmake/blob/main/docs/android_termux_setup.md) and [Pixel Terminal](https://github.com/eliranwong/agentmake/blob/main/docs/android_pixel_terminal_setup.md)\n\n# Supported backends\n\n`anthropic` - [Anthropic API](https://console.anthropic.com/) [[docs](https://docs.anthropic.com/en/home)]\n\n`azure` - [Azure OpenAI Service API](https://ai.azure.com/github) [[docs](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference)]\n\n`azure_any` - [Azure AI Inference API](https://ai.azure.com/github) [[docs](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference)]\n\n`cohere` - [Cohere API](https://cohere.com/) [[docs](https://docs.cohere.com/docs/the-cohere-platform)]\n\n`custom` - any openai-compatible backends that support function calling\n\n`deepseek` - [DeepSeek API](https://platform.deepseek.com/) [[docs](https://api-docs.deepseek.com/)]\n\n`genai` - [Vertex AI](https://cloud.google.com/vertex-ai) or [Google AI](https://ai.google.dev/) [[docs](https://github.com/googleapis/python-genai)]\n\n`github` - [Azure OpenAI Service via Github Token](https://docs.github.com/en/github-models/prototyping-with-ai-models#experimenting-with-ai-models-using-the-api) [[docs](https://github.com/marketplace/models/azure-openai/gpt-4o)]\n\n`github_any` - [Azure AI Inference via Github Token](https://ai.azure.com/github) [[docs](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference)]\n\n`googleai` - [Google AI](https://ai.google.dev/) [[docs](https://ai.google.dev/gemini-api/docs/openai)]\n\n`groq` - [Groq Cloud API](https://console.groq.com) [[docs](https://console.groq.com/docs/overview)]\n\n`llamacpp` - [Llama.cpp Server](https://github.com/ggml-org/llama.cpp) [[docs](https://github.com/ggml-org/llama.cpp#llama-server)] - [local setup](https://github.com/ggerganov/llama.cpp/blob/master/docs/build.md) required\n\n`mistral` - [Mistral API](https://console.mistral.ai/api-keys/) [[docs](https://docs.mistral.ai/)]\n\n`ollama` - [Ollama](https://ollama.com/) [[docs](https://github.com/ollama/ollama-python)] - [local setup](https://ollama.com/download) required\n\n`openai` - [OpenAI API](https://platform.openai.com/) [[docs](https://platform.openai.com/)]\n\n`vertexai` - [Vertex AI](https://cloud.google.com/vertex-ai) [[docs](https://github.com/googleapis/python-genai)]\n\n`xai` - [XAI API](https://x.ai/api) [[docs](https://docs.x.ai/docs/overview)]\n\nFor simplicity, `agentmake` uses `ollama` as the default backend, if parameter `backend` is not specified. Ollama models are automatically downloaded if they have not already been downloaded. Users can change the default backend by modifying environment variable `DEFAULT_AI_BACKEND`.\n\n## Setup Examples\n\nhttps://github.com/eliranwong/agentmake/tree/main/docs\n\n# Introducing Agentic Components\n\n`agentmake` is designed to work with seven kinds of components for building agentic applications:\n\n1. `system` - System messages are crucial for defining the roles of the AI agents and guiding how AI agents interact with users. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/systems). `agentmake` supports the use of `fabric` patterns as `system` components for running `agentmake` function or CLI options [READ HERE](https://github.com/eliranwong/agentmake#fabric-integration).\n\n2. `instruction` - Predefined instructions that are added to users' prompts as prefixes, before they are passed to the AI models. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/instructions). `agentmake` supports the use of `fabric` patterns as `instruction` components for running `agentmake` function or CLI options [READ HERE](https://github.com/eliranwong/agentmake#fabric-integration).\n\n3. `input_content_plugin` - Input content plugins process or transform user inputs before they are passed to the AI models. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/plugins).\n\n4. `output_content_plugin` - Output content plugins process or transform assistant responses after they are generated by AI models. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/plugins).\n\n5. `tool` - Tools take simple structured actions in response to users' requests, with the use of `schema` and `function calling`. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/tools).\n\n6. `agent` - Agents are agentic applications automate multiple-step actions or decisions, to fulfill complicated requests.  They can be executed on their own or integrated into an agentic workflow, supported by `agentmake`, to work collaboratively with other agents or components. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/agents).\n\n7. `follow_up_prompt` - Predefined prompts that are helpful for automating a series of follow-up responses after the first assistant response is generated. Check out our [examples](https://github.com/eliranwong/agentmake/tree/main/agentmake/prompts).\n\n# Built-in and Custom Agentic Components\n\n`agentmake` supports both built-in agentic components, created by our developers or contributors, and cutoms agentic components, created by users to meet their own needs.\n\n## Built-in Agentic Components\n\nBuilt-in agents components are placed into the following six folders inside the `agentmake` folders:\n\n`agents`, `instructions`, `plugins`, `prompts`, `systems`, `tools`\n\nTo use the built-in components, you only need to specify the component filenames, without parent paths or file extensions, when you run the `agentmake` signature function or CLI options.\n\n## Custom Agentic Components\n\n`agentmake` offers two options for users to use their custom components.\n\nOption 1: Specify the full file path of inidividual components\n\nGiven the fact that each component can be organised as a single file, to use their own custom components, users only need to specify the file paths of the components they want to use, when they run the `agentmake` signature function or CLI options.\n\nOption 2: Place custom components into `agentmake` user directory\n\nThe default `agentmake` user directory is `~/agentmake`, i.e. a folder named `agentmake`, created under user's home directory. Uses may define their own path by modifying the environment variable `AGENTMAKE_USER_DIR`.\n\nAfter creating a folder named `agentmake` under user directory, create six sub-folders in it, according to the following names and place your custom components in relevant folders, as we do with our built-in components.\n\nIf you organize the custom agentic components in this way, you only need to specify the component filenames, without parent paths or file extensions, when you run the `agentmake` signature function or CLI options.\n\n## Priorities\n\nIn cases where a built-in tool and a custom tool have the same name, the custom tool takes priority over the built-in one. This allows for flexibility, enabling users to copy a built-in tool, modify its content, and retain the same name, thereby effectively overriding the built-in tool.\n\n# Agentic Application that Built on AgentMake AI\n\nBelow are a few examples to illustrate how easy to build agentic applications with AgentMake AI.\n\n## Example 1 - ToolMate AI\n\n[ToolMate AI version 2.0](https://github.com/eliranwong/toolmate) is completely built on AgentMake AI, based on the following two agentic workflows, to reolve both complex and simple tasks.\n\nTo resolve complex tasks:\n\n\u003cimg width=\"794\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c79efda7-5da5-41fe-af67-e48ea32e5af6\" /\u003e\n\nTo resolve simple tasks:\n\n\u003cimg width=\"881\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/7809fa98-83e1-4a82-af80-2706895d4985\" /\u003e\n\n## Example 2 - TeamGen AI\n\n[TeamGenAI AI version 2.0](https://github.com/eliranwong/teamgenai) is completely built on AgentMake AI, based on the following agentic workflow, to create multi-agents for collaboration on resolving user requests.\n\n\u003cimg width=\"832\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/cf27cf97-ea7a-42bd-a050-3663064dc07d\" /\u003e\n\n## Example 3 - LetMeDoIt AI\n\n[LetMeDoIt AI version 3.0](https://github.com/eliranwong/letmedoit) is completely built on AgentMake AI, based on the following agentic workflow, to resolve tasks with default and custom tools.\n\n\u003cimg width=\"708\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/5a7240ae-dd17-48a6-b4e2-712309b4b130\" /\u003e\n\n# Installation\n\n## Disclaimer\n\nIn response to your instructions, AgentMake AI is capable of applying tools to generate files or make changes on your devices. Please use it with your sound judgment and at your own risk. We will not take any responsibility for any negative impacts, such as data loss or other issues.\n\n## Basic:\n\n\u003e pip install --upgrade agentmake\n\nBasic installation supports all AI backends mentioned above, except for `vertexai`.\n\n## Extras:\n\nTo install the web UI `AgentMake Studio` (https://github.com/eliranwong/agentmakestudio):\n\n\u003e pip install --upgrade \"agentmake[studio]\"\n\nTo support running MCP servers via [agentmakemcp](https://github.com/eliranwong/agentmakemcp):\n\n\u003e pip install --upgrade \"agentmake[mcp]\"\n\nWe 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 `agentmake`, install with running:\n\n\u003e pip install --upgrade \"agentmake[genai]\"\n\n## Virtual Environment and PATH Setup\n\nIt is recommended to set up a virtual environment for running AgentMake AI, read:\n\nRead https://github.com/eliranwong/agentmake/blob/main/docs/add_path.md\n\n## Remarks\n\nIt is recommended not to install `agentmake` inside the directory `~/agentmake`, as `~/agentmake` is used by default for placing user custom content.\n\n# Usage\n\nThis SDK is designed to offer a single signature function `agentmake` for interacting with all AI backends, delivering a unified experience for generating AI responses. The main APIs are provided with the function `agentmake` located in this [file](https://github.com/eliranwong/agentmake/blob/main/agentmake/__init__.py#L71).\n\nFind documentation at https://github.com/eliranwong/agentmake/blob/main/docs/README.md\n\n# Examples\n\nThe following examples assumes [Ollama](https://ollama.com/) is [installed](https://ollama.com/download) as the default backend.\n\nTo import:\n\n\u003e from agentmake import agentmake\n\nTo run, e.g.:\n\n\u003e agentmake(\"What is AI?\")\n\nTo work with parameter `tool`, e.g.:\n\n\u003e agentmake(\"What is AgentMake AI?\", tool=\"search/google\")\n\n\u003e agentmake(\"How many 'r's are there in the word 'strawberry'?\", tool=\"magic\")\n\n\u003e agentmake(\"What time is it right now?\", tool=\"magic\")\n\n\u003e agentmake(\"Open github.com in a web browser.\", tool=\"magic\")\n\n\u003e agentmake(\"Convert file 'music.wav' into mp3 format.\", tool=\"magic\")\n\n\u003e agentmake(\"Send an email to Eliran Wong at eliran.wong@domain.com to express my gratitude for his work.\", tool=\"email/gmail\")\n\nTo work with parameters `input_content_plugin` and `output_content_plugin`, e.g.:\n\n\u003e agentmake(\"what AI model best\", input_content_plugin=\"styles/british_english\", output_content_plugin=\"chinese/translate_tc_deepseek\", stream=True)\n\nTo work with `plugin` that is placed in a sub-folder, e.g.:\n\n\u003e agentmake(\"你好吗？\", output_content_plugin=\"chinese/convert_simplified\")\n\nTo automate prompt engineering:\n\n\u003e agentmake(\"what best LLM training method\", system=\"auto\", input_content_plugin=\"improve_prompt\")\n\nTo work with parameter `system`, `instruction`, `follow_up_prompt`, e.g.:\n\n\u003e agentmake(\"Is it better to drink wine in the morning, afternoon, or evening?\", instruction=\"reflect\", stream=True)\n\n\u003e agentmake(\"Is it better to drink wine in the morning, afternoon, or evening?\", instruction=\"think\", follow_up_prompt=[\"review\", \"refine\"], stream=True)\n\n\u003e agentmake(\"Provide a detailed introduction to generative AI.\", system=[\"create_agents\", \"assign_agents\"], follow_up_prompt=\"Who is the best agent to contribute next?\", stream=True, model=\"llama3.3:70b\")\n\nTo work with parameter `agent`, e.g.:\n\n\u003e agentmake(\"Write detailed comments about the works of William Shakespeare, focusing on his literary contributions, dramatic techniques, and the profound impact he has had on the world of literature and theatre.\", agent=\"teamwork\", stream=True, model=\"llama3.3:70b\")\n\n\u003e agentmake(\"Send an email to Eliran Wong at eliran.wong@domain.com to express my gratitude for his work\", agent=\"auto_tool_selection\")\n\n\u003e agentmake(\"Write brief introductions to the Gospels of Mark, Luke, and John, and save each introduction in a separate file, placing them in three different folders named after the respective Gospel book.\", agent=\"super\", backend=\"azure\")\n\nRemarks: the agent `super` is designed to resolve complex tasks that involve multiple steps, tools and agents. It fully automates task plan, tool selection, execution and quality control. Read more at https://github.com/eliranwong/agentmake/blob/main/examples/automate_task_execution.py and https://github.com/eliranwong/agentmake/blob/main/examples/automate_task_execution_tools_specified.md\n\nTo specify an AI backend:\n\n\u003e agentmake(\"What is Microsoft stock price today?\", tool=\"search/finance\", backend=\"azure\")\n\nTo work collaboratively with different backends, e.g.\n\n\u003e messages = agentmake(\"What is the most effective method for training AI models?\", backend=\"openai\")\n\n\u003e messages = agentmake(messages, backend=\"googleai\", follow_up_prompt=\"Can you give me some different options?\")\n\n\u003e messages = agentmake(messages, backend=\"xai\", follow_up_prompt=\"What are the limitations or potential biases in this information?\")\n\n\u003e agentmake(messages, backend=\"mistral\", follow_up_prompt=\"Please provide a summary of the discussion so far.\")\n\nAs you may see, the `agentmake` function returns the `messages` list, which is passed to the next `agentmake` function in turns.\n\nTherefore, it is very simple to create a chatbot application, you can do it as few as five lines or less, e.g.:\n\n\u003e messages = [{\"role\": \"system\", \"content\": \"You are an AI assistant.\"}]\n\n\u003e user_input = \"Hello!\"\n\n\u003e while user_input:\n\n\u003e     messages = agentmake(messages, follow_up_prompt=user_input, stream=True)\n\n\u003e     user_input = input(\"Enter your query:\\n(enter a blank entry to exit)\\n\u003e\u003e\u003e \")\n\nRead our [web UI chatbot example](https://github.com/eliranwong/agentmake/blob/main/examples/webui_with_mesop.py) at:\n\nhttps://github.com/eliranwong/agentmake/blob/main/examples/webui_with_mesop.py\n\nYou may take a look at out our built-in components for more ideas:\n\n[systems](https://github.com/eliranwong/agentmake/tree/main/agentmake/systems)\n\n[instructions](https://github.com/eliranwong/agentmake/tree/main/agentmake/instructions)\n\n[plugins](https://github.com/eliranwong/agentmake/tree/main/agentmake/plugins)\n\n[tools](https://github.com/eliranwong/agentmake/tree/main/agentmake/tools).\n\n[agents](https://github.com/eliranwong/agentmake/tree/main/agentmake/agents).\n\n[prompts](https://github.com/eliranwong/agentmake/tree/main/agentmake/prompts).\n\n# Web UI Studio\n\n![Image](https://github.com/user-attachments/assets/3e8dbe05-855d-4c0a-a581-bc262443b452)\n\nTo install:\n\n\u003e pip install --upgrade \"agentmake[studio]\"\n\nTo run the AgentMake Studio:\n\n\u003e agentmakestudio\n\nThen, open `http://localhost:32123` in a web browser.\n\nRead more at: https://github.com/eliranwong/agentmakestudio\n\n# CLI Options\n\nCommand CLI are designed for quick run of AI features.\n\nTo work with CLI options without activating virtual environment, read https://github.com/eliranwong/agentmake/blob/main/docs/add_path.md\n\nCheck for CLI options, run:\n\n\u003e agentmark -h\n\nTwo shortcut commands:\n\n`ai` == `agentmake`\n\n`aic` == `agentmake -c` with chat features enabled\n\nThe available CLI options use the same parameter names as the `agentmake` function for AI backend configurations, to offer users a unified experience. Below are some CLI examples, that are equivalent to some of the examples mentioned above:\n\n\u003e ai What is AI?\n\n\u003e ai What is AgentMake AI --tool search/google\n\n\u003e ai Convert file music.wav into mp3 format. --tool task\n\n\u003e ai Send an email to Eliran Wong at eliran.wong@domain.com to express my gratitude for his work --tool email/gmail\n\n\u003e ai Extract text from image file sample.png. --tool=ocr/openai\n\n\u003e ai What is Microsoft stock price today? -t search/finance -b azure\n\n\u003e ai what AI model best --input_content_plugin styles/british_english --output_content_plugin chinese/translate_tc_deepseek\n\n\u003e ai what best LLM training method --system auto --input_content_plugin improve_prompt\n\n\u003e ai 你好吗？ --output_content_plugin=chinese/convert_simplified\n\n\u003e ai Is it better to drink wine in the morning, afternoon, or evening? --instruction think --follow_up_prompt review --follow_up_prompt refine\n\n\u003e ai Write detailed comments about the works of William Shakespeare, focusing on his literary contributions, dramatic techniques, and the profound impact he has had on the world of literature and theatre --agent teamwork --model \"llama3.3:70b\"\n\n\u003e ai -a auto_tool_selection \"Send an email to Eliran Wong at eliran.wong@domain.com to express my gratitude for his work\"\n\n\u003e ai -a super -b azure \"Write brief introductions to the Gospels of Mark, Luke, and John, and save each introduction in a separate file, placing them in three different folders named after the respective Gospel book.\"\n\n## More Examples\n\nMore examples at https://github.com/eliranwong/agentmake/tree/main/examples\n\n## Work with Text Selection and Clipboard\n\nCLI options allow you to work with selected or copied text easily.\n\nA setup example on Linux: https://github.com/eliranwong/AMD_iGPU_AI_Setup#test-with-selected-or-copied-text\n\nA setup example on macOS: https://github.com/eliranwong/agentmake/blob/main/docs/work_with_text_selection.md#macos-setup\n\n## CLI for Testing\n\nCLI options are handy for testing, e.g. simply use a newly developed `tool` file with `-t` option and run:\n\n\u003e ai What is AgentMake AI? -t ~/my_folder/perplexica.py\n\n# Interactive Mode\n\nAgentMake AI offers a simple interactive mode, run:\n\n\u003e ai -i\n\n![Image](https://github.com/user-attachments/assets/e4872498-0cef-48e7-a550-55c0c4234929)\n\nIt works with selected or copied text for desktop integration, read https://github.com/eliranwong/agentmake/blob/main/docs/work_with_text_selection.md\n\n# AI Backends Configurations\n\nFor quick start, run:\n\n\u003e agentmake -ec\n\nFor more options:\n\nTo use `ollama` as the default backend, you need to [download and install](https://ollama.com/download) Ollama. To use backends other than Ollama, you need to use your own API keys.  There are a few options you may configure the AI backends to work with `agentmake`.\n\n## Option 1 - Use the `agentmake` function\n\nSpecify AI backend configurations as [parameters](https://github.com/eliranwong/agentmake/tree/main/docs#usage) when you run the `agentmake` signature function `agentmake`.\n\nSetting configurations via option 1 overrides the default configurations set by option 2 and option 3, but the overriding is effective only when you run the function, with the specified configurations. Default configurations described below in option 2 and 3 still apply next time when you run the `agentmake` function, without specifying the AI backend parameters. This gives you flexibility to specify different settings in addition to the default ones.\n\n## Option 2 - Export individual environment variables\n\nYou may manually export individual environment variables listed in https://github.com/eliranwong/agentmake/blob/main/agentmake.env\n\n## Option 3 - Export default environment variables once for all\n\n1.  Make a copy of the [file](https://github.com/eliranwong/agentmake/blob/main/agentmake/agentmake.env) `agentmake.env`, located in the package directory, as:\n\neither `~/agentmake/agentmake.env`\n\n```\ncd agentmake # where you installed agentmake\ncp agentmake.env ~/agentmake/agentmake.env\n```\n\nor `\u003cpackage_directory\u003e/.env`:\n\n```\ncd agentmake # where you installed agentmake\ncp agentmake.env .env\n```\n\n2. Edit the file manually with a text editor, e.g.\n\n\u003e etextedit ~/agentmake/agentmake.env\n\n3. Save the changes\n\nThe changes apply next time when you run `agentmake` function or cli.\n\n## Option 4 - Run built-in CLI option\n\nUse built-in `agentmake` cli option to edit the variables:\n\n\u003e agentmake -ec\n\nWhat does this command do?\n\n* It automatically makes a copy of [file](https://github.com/eliranwong/agentmake/blob/main/agentmake/agentmake.env) `agentmake.env` and save it as `\u003cpackage_directory\u003e/.env` if both `\u003cpackage_directory\u003e/.env` and `~/agentmake/agentmake.env` do not exist.\n* It uses the text editor, specified in `DEFAULT_TEXT_EDITOR`, to open the configuration file `~/agentmake/agentmake.env` if it exists or `\u003cpackage_directory\u003e/.env` if `~/agentmake/agentmake.env` does not exist.\n\nRemember to save your changes to make them effective.\n\n## Note about Ollama AI Setup on Linux\n\nConfigure Ollama, run:\n\n\u003e sudo nano /etc/systemd/system/ollama.service\n\nAdd the following three lines at the end of the [Service] session:\n\n```\nEnvironment=\"OLLAMA_HOST=0.0.0.0\"\n```\n\nReload and restart Ollama service, run:\n\n\u003e sudo systemctl daemon-reload\n\n\u003e sudo systemctl restart ollama\n\nTo work with AgentMake CLI option `--get_model`, add user to user group `ollama` for access of Ollama model directory:\n\n\u003e sudo usermod -a -G ollama $LOGNAME\n\n\u003e sudo reboot\n\n## Note about Azure AI Setup\n\nAn easy way to deploy AI models via Azure service:\n\n1. Sign in https://ai.azure.com/github\n2. All resources \u003e Create New\n3. Overview \u003e copy an API key, Azure OpenAI Service and Azure AI inference endpoints\n\n* Use Azure OpenAI Service endpoint for running OpenAI models; the endpoint should look like https://resource_name.openai.azure.com/\n\n* Use Azure AI inference endpoint for running DeepSeek-R1 and Phi-4; the endpoint should look like https://resource_name.services.ai.azure.com/models\n\nTo configure AgentMake AI, run:\n\n\u003e ai -ec\n\nYou can check the configurable variables at https://github.com/eliranwong/agentmake/blob/main/agentmake/agentmake.env\n\n## Note about Vertex AI Setup\n\nMake sure the extra package `genai` is installed with the command mentioned above:\n\n\u003e pip install --upgrade \"agentmake[genai]\"\n\nTo configure, run:\n\n\u003e ai -ec\n\nEnter the path of your Google application credentials JSON file as the value of `VERTEXAI_API_KEY`. You need to specify your project ID and service location, in the configurations, as well. e.g.:\n\n```\nVERTEXAI_API_KEY=~/agentmake/google_application_credentials.json\nVERTEXAI_API_PROJECT_ID=my_project_id\nVERTEXAI_API_SERVICE_LOCATION=us-central1\n```\n\nRemarks: If `VERTEXAI_API_KEY` is blank, `~/agentmake/google_application_credentials.json` is used by default.\n\nTo test Gemini 2.0 with Vertex AI, e.g.:\n\n\u003e ai -b vertexai -m gemini-2.0-flash Hi!\n\n## Remarks\n\n1. Please do not edit the file `agentmake.env`, that is located in the package directory, directly, as it is restored to its default values upon each upgrade.  It is recommended to make a copy of it and edit the copied file.\n2. Multiple API keys are supported for running backends `cohere`, `github`, `groq` and `mistral`. You may configure API keys for these backend in the `.env` file by using commas `,` as separators, e.g. `COHERE_API_KEY=cohere_api_key_1,cohere_api_key_2,cohere_api_key_3`\n\n# Fabric Integration\n\n`fabric` is a fantastic [third-party project](https://github.com/danielmiessler/fabric/tree/main/patterns) that offers [a great collection of patterns](https://github.com/danielmiessler/fabric/tree/main/patterns).\n\n`agentmake` supports the use of `fabric` patterns as entries for the `system` or `instruction` parameters when running the `agentmake` signature function or CLI options.\n\nTo use a fabric pattern in `agentmake`:\n\n1. Install [fabric](https://github.com/danielmiessler/fabric/tree/main/patterns)\n2. Specify a fabric pattern in `agentmake` parameter `system` or `instruction`, by prefixing the selected pattern with `fabric.`\n\n\u003e agentmake(\"The United Kingdom is a Christian country.\", tool=\"search/searxng\", system=\"fabric.analyze_claims\")\n\n# Local Backends with GPU Acceleration\n\nBoth local backends `ollama` and `llamacpp` support GPU accelerations.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliranwong%2Fagentmake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feliranwong%2Fagentmake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliranwong%2Fagentmake/lists"}