经 AI Skill Hub 精选评估,AIlice Agent工作流 获评「强烈推荐」。已获得 1.4k 颗 GitHub Star,这款AI工具在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 8.2 分,适合有一定技术背景的用户使用。
AIlice Agent工作流 是一款基于 Python 开发的开源工具,专注于 AI代理、工作流自动化、LLM 等核心功能。作为 GitHub 开源项目,它拥有活跃的社区支持和持续的版本迭代,代码完全透明可审计,支持本地部署以保护数据隐私。无论是个人使用还是集成到企业工作流,都能提供稳定可靠的解决方案。
AIlice Agent工作流 是一款基于 Python 开发的开源工具,专注于 AI代理、工作流自动化、LLM 等核心功能。作为 GitHub 开源项目,它拥有活跃的社区支持和持续的版本迭代,代码完全透明可审计,支持本地部署以保护数据隐私。无论是个人使用还是集成到企业工作流,都能提供稳定可靠的解决方案。
# 方式一:pip 安装(推荐)
pip install ailice
# 方式二:虚拟环境安装(推荐生产环境)
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install ailice
# 方式三:从源码安装(获取最新功能)
git clone https://github.com/myshell-ai/AIlice
cd AIlice
pip install -e .
# 验证安装
python -c "import ailice; print('安装成功')"
# 命令行使用
ailice --help
# 基本用法
ailice input_file -o output_file
# Python 代码中调用
import ailice
# 示例
result = ailice.process("input")
print(result)
# ailice 配置文件示例(config.yml) app: name: "ailice" debug: false log_level: "INFO" # 运行时指定配置文件 ailice --config config.yml # 或通过环境变量配置 export AILICE_API_KEY="your-key" export AILICE_OUTPUT_DIR="./output"
</div>
<p align="center"> <a href="#quick-start">Quick Start</a> • <a href="https://www.youtube.com/@stevenlu-zh6ds">Demo</a> • <a href="#development">Development</a> • <a href="https://twitter.com/stevenlu1729">Twitter</a> • <a href="https://www.reddit.com/r/AIlice/">Reddit</a> </p>
---
ATTENTION! We currently has no plans to create any related crypto tokens. Please be cautious and recognize scams to avoid being deceived. (Updated on January 6, 2025)
:fire: Mar 22, 2025: Ailice can now use MCP tools! Click here.
:fire: Jan 23, 2025: Updated the voice dialogue feature. Thanks to ChatTTS's excellent implementation, voice dialogue has finally moved beyond its experimental status and become practical.
:fire: Jun 22, 2024: We have entered the era of locally running JARVIS-like AI assistants! The latest open-source LLMs enable us to perform complex tasks locally! Click here to learn more.
----
Ailice is a fully autonomous, general-purpose AI agent. This project aims to create a standalone artificial intelligence assistant, similar to JARVIS, based on the open-source LLM. Using its unique IACT(Interactive Agents Call Tree) architecture, AIlice can decompose complex tasks into dynamically constructed agents and integrate results with high fault tolerance. Currently, Ailice demonstrates proficiency in a range of tasks, including thematic research, coding, system management, literature reviews, and complex hybrid tasks that go beyond these basic capabilities.
We will ultimately achieve self-evolution of AI agents. That is, AI agents will autonomously build their own feature expansions and new types of agents, unleashing LLM's knowledge and reasoning capabilities into the real world seamlessly.
---
Key technical features of Ailice include:
<a name="quick-start"></a>
If users do not plan to run LLMs locally, then running Ailice has virtually no hardware requirements. For users who want to run LLMs locally, currently only models with 70B or more parameters can perform tasks well, therefore you need at least two RTX 4090 GPUs (48GB VRAM) to effectively complete tasks.
Before installing Ailice, it is strongly recommended to install Anaconda and create a virtual environment first (you can also use other tools you prefer, such as venv). You will also need Chrome, as Ailice needs it for web browsing. For users who want to run Ailice in a fully controlled container/virtual machine, you will need Docker (or other virtual machines, such as VirtualBox).
If you want to run Ailice in a virtual machine, ensure Hyper-V is turned off(otherwise llama.cpp cannot be installed). In a VirtualBox environment, you can disable it by following these steps: disable PAE/NX and VT-X/AMD-V ( Hyper-V) on VirtualBox settings for the VM. Set paravirtualization Interface to Default, disable nested paging.
<a name="environment-configuration-and-installation"></a>
Install and run Ailice with the following commands. Once Ailice is launched, use a browser to open the web page it provides, a dialogue interface will appear. Issue commands to Ailice through the conversation to accomplish various tasks. For your first use, you can try the commands provided in the COOL things we can do section to quickly get familiarized.
Local run:
git clone https://github.com/myshell-ai/AIlice.git
cd AIlice
pip install -e .
ailice --contextWindowRatio=0.2
Sandbox run:
git clone https://github.com/myshell-ai/AIlice.git
cd AIlice
docker build -t ailice .
docker run -it -p 127.0.0.1:5000:5000 --name ailice ailice --expose=1 --contextWindowRatio=0.2
Sandbox run with CUDA support(Please install nvidia-container-toolkit first):
git clone https://github.com/myshell-ai/AIlice.git
cd AIlice
docker build --build-arg BASE_IMAGE=nvidia/cuda:13.0.0-cudnn-devel-ubuntu24.04 -t ailice .
docker run --gpus all -it -p 127.0.0.1:5000:5000 --name ailice ailice --expose=1 --contextWindowRatio=0.2
Sandbox run with GUI support(Linux only, special configuration required for Windows and macOS):
git clone https://github.com/myshell-ai/AIlice.git
cd AIlice
docker build -t ailice .
docker run -it -p 127.0.0.1:5000:5000 \
-e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix \
--name ailice \
ailice --expose=1 --contextWindowRatio=0.2
<a name="cool-things-we-can-do"></a>
<a name="system-requirements"></a>
You can use the following command to install Ailice:
git clone https://github.com/myshell-ai/AIlice.git
cd AIlice
pip install -e .
The running speed of Ailice may be slow after installation, as the long-term memory module's embedded model computation might be running on CPU. In this case, we can try running the following command to install GPU acceleration:
ailice_turbo
For users who need to use the pdf reading/voice dialogue/huggingface models/model fine-tuning functions, you can use one of the following command(Installing too many features increases the likelihood of dependency conflicts, so it is recommended to install only the necessary parts):
pip install -e .[pdf-reading]
pip install -e .[speech]
pip install -e .[huggingface]
pip install -e .[finetuning]
You can run Ailice now! Use the commands in Usage.
<a name="if-you-need-to-frequently-use-google"></a>
<a name="quick-installation"></a>
You can directly copy a command from the typical use cases below to run Ailice.
ailice #Use models configured individually for different agents under the agentModelConfig field in config.json.
ailice_web --speechOn=1 --ttsDevice=cuda --sttDevice=cuda
ailice --modelID=anthropic:claude-sonnet-4-20250514 --contextWindowRatio=0.2
ailice --modelID=openrouter:z-ai/glm-4.5 --chatHistoryPath=./chat_history --contextWindowRatio=0.2
ailice --modelID=mistral:mistral-large-latest --prompt="researcher"
ailice --modelID=deepseek:deepseek-chat
ailice --modelID=hf:Open-Orca/Mistral-7B-OpenOrca --quantization=8bit --contextWindowRatio=0.6
ailice --modelID=groq:llama3-70b-8192
ailice --modelID=openrouter:google/gemini-2.5-pro
ailice --modelID=lm-studio:qwen2-72b --contextWindowRatio=0.5
It should be noted that the last use case requires you to configure the LLM inference service first, please refer to How to Add LLM Support. Using inference frameworks such as LM Studio can use limited hardware resources to support larger models, provide faster inference speed and faster Ailice startup speed, making it more suitable for ordinary users.
When you run it for the first time, you will be asked to enter the api-key. You can also modify the api-key by editing the config.json file. Please note that the first time When using an open source LLM, it will take a long time to download the model weights, please make sure you have enough time and disk space.
When you turn on the speechOn switch for the first time, you may need to wait for a long time at startup. This is because the weights of the speech recognition and TTS models are being downloaded in the background.
As shown in the examples, you can use the Agent through ailice, it provides a web dialogue interface. You can view the default value of each parameter by using
ailice --help
The default values for all command line arguments can be customized by modifying the corresponding parameters in config.json.
- --modelID There are two modes for model configuration. In the first mode, the model is uniformly specified by modelID. In the second mode, different types of agents will run on different models. When this parameter is an empty string (unspecified), the second mode will be used automatically, i.e., the models configured individually for different agents under the agentModelConfig field in config.json will be used, for details please refer to Using Different Models in Different Agents. The currently supported models can be seen in config.json. - --quantization is the quantization option, you can choose 4bit or 8bit. The default is not quantized. - --maxMemory is the memory video memory capacity constraint, the default is not set, the format when set is like "{0:"23GiB", 1:"24GiB", "cpu": "64GiB"}". - --prompt specifies the prompt to be executed, which is the type of agent. The default is 'main', this agent will decide to call the appropriate agent type according to your needs. You can also specify a special type of agent and interact with it directly. - --temperature sets the temperature parameter of LLM reasoning, the default is zero. - --flashAttention2 is the switch to enable flash attention 2 to speed up inference. It may have a certain impact on output quality. - --contextWindowRatio is a user-specified proportion coefficient, which determines the proportion of the upper limit of the prompt length constructed during inference to the LLM context window in some cases. The default value is 0.6. - --speechOn is the switch to enable voice conversation. - --ttsDevice specifies the computing device used by the text-to-speech model. The default is "cpu", you can set it to "cuda" if there is enough video memory. - --sttDevice specifies the computing device used by the speech-to-text model. The default is "cpu", you can set it to "cuda" if there is enough video memory. - --resetApiKey whether to reset the model's API key after startup. - --chatHistoryPath is used to specify the directory where chat history data is stored. - --certificate Certificate settings for the web interface. The simplest option is an empty string, which will use the HTTP protocol for the UI web page. Setting it to 'adhoc' will use a self-generated certificate, providing encryption for the data flow between the UI and server, but it requires dismissing browser security warnings. The most secure method is to apply for a certificate and set this parameter to '{"cert": "your_cert.pem", "key": "your_key.pem")'. - --expose Whether to provide public access. - --share create a publicly shareable link for Ailice. (For security reasons, we have temporarily removed this feature. It will be re-enabled once more security measures are implemented in the UI. Please ensure that the services provided by app.py are not exposed to any untrusted networks)
<a name="configuring-extension-modules-and-mcp-servers"></a>
Updated on Aug 15, 2025.
Currently, Ailice can handle more complex tasks using the locally run 72B open-source model (qwen-2.5-72b-instruct running on 4090x2). Considering the low cost of open-source models, we highly recommend users to start using them. Moreover, localizing LLM operations ensures absolute privacy protection, a rare quality in AI applications in our time. Click here to learn how to run LLM locally. For users whose GPU conditions are insufficient to run large models, you can use the online inference service (such as openrouter, this will be mentioned next) to access these open-source models (though this sacrifices privacy). You can make agents excel by leveraging different models according to their strengths and weaknesses. For details, please refer to Using Different Models in Different Agents.
claude-3-5-sonnet/claude-3-7-sonnet/claude-sonnet-4/gemini-2.5-pro provides the best performance.
z-ai/glm-4.5 is very close to top-tier performance.
qwen-2.5-72b-instruct provides the best performance at the 70B level
gpt-4-turbo/gpt-3.5-turbo is surprisingly lazy, and we have never been able to find a stable prompt expression. gpt-4o used to have top-tier performance, but currently (similar to the previous turbo models) they exhibit laziness issues in function calls. We no longer recommend using them.
For users whose hardware capabilities are insufficient to run open-source models locally and who are unable to obtain API keys for commercial models, they can try the following options:
<a name="the-most-outstanding-open-source-model"></a>
The configuration file of Ailice is named config.json, and its location will be output to the command line when Ailice is started. In this section, we will introduce how to extend Ailice's external interaction capabilities through configuration file.
In Ailice, we use the term "module" to specifically refer to components that provide functions for interacting with the external world. Each module runs as an independent process; they can run in different software or hardware environments from the core process, making Ailice capable of being distributed. We provide a series of basic module configurations in the configuration file required for Ailice's operation (such as vector database, search, browser, code execution, etc.). You can also add configurations for new modules. Module configuration is very simple, consisting of only two items:
"services": {
...
"scripter": {"cmd": "python3 -m ailice.modules.AScripter --addr=tcp://127.0.0.1:59000",
"addr": "tcp://127.0.0.1:59000"},
...
}
Among these, under "cmd" is a command line used to start the module's process. When Ailice starts, it automatically runs these commands to launch the modules. Users can specify any command, providing significant flexibility. You can start a module's process locally or utilize Docker to start a process in a virtual environment, or even start a remote process. Some modules have multiple implementations (such as Google/Storage), and you can configure here to switch to another implementation.
"addr" refers to the address and port number of the module process. Users might be confused by the fact that many modules in the default configuration have both "cmd" and "addr" containing addresses and port numbers, causing redundancy. This is because "cmd" can, in principle, contain any command (which may include addresses and port numbers, or none at all). Therefore, a separate "addr" item is necessary to inform Ailice how to access the module process.
Ailice can use tools from various MCP servers, simply by wrapping the MCP server with the ailice_mcp_wrapper command, which allows it to be used as a standard extension module for Ailice.
For an MCP server started locally in stdio mode, assuming the startup command is mcp_echo hello, we use the following configuration to launch it as a standard Ailice service.
"services": {
...
"mcp_echo": {"cmd": "ailice_mcp_wrapper --addr tcp://127.0.0.1:59200 stdio mcp_echo hello",
"addr": "tcp://127.0.0.1:59200"},
...
}
For an MCP server in SSE mode, assuming its service address is: http://example:8000/sse, we use the following configuration to connect to it.
"services": {
...
"mcp_echo": {"cmd": "ailice_mcp_wrapper --addr tcp://127.0.0.1:59200 sse --server_url http://example:8000/sse",
"addr": "tcp://127.0.0.1:59200"},
...
}
For extension modules that are set up in the configuration file, Ailice automatically loads them after startup and selects the appropriate tools for the current task. In addition to using config.json, you can also provide Ailice with the address and port of the extension module process during runtime, and it can dynamically load and use the module.
<a name="useful-tips"></a>
<a name="guide-to-choosing-an-llm"></a>
AIlice是成熟的自主AI代理框架,架构完整、社区活跃,支持复杂工作流编排,代码质量较高,是LLM工作流领域的优质开源项目。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:AIlice Agent工作流 的核心功能完整,质量优秀。对于AI爱好者来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | AIlice |
| 原始描述 | 开源AI工作流:AIlice is a fully autonomous, general-purpose AI agent.。⭐1.4k · Python |
| Topics | AI代理工作流自动化LLM开源框架Python |
| GitHub | https://github.com/myshell-ai/AIlice |
| License | MIT |
| 语言 | Python |
收录时间:2026-05-14 · 更新时间:2026-05-16 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。