Taskweaver-это структура агента -кода для беспрепятственного планирования и выполнения задач анализа данных. Эта инновационная структура интерпретирует запросы пользователей с помощью фрагментов кода и эффективно координирует различные плагины в форме функций для выполнения задач анализа данных.
В отличие от многих фреймворков агента, которые только отслеживают историю чата с LLMS в тексте, TaskWeaver сохраняет как историю чата , так и историю выполнения кода , включая данные в памяти. Эта функция повышает выразительность фреймворта агента, что делает ее идеальной для обработки сложных структур данных, таких как высокомерные табличные данные.

container по умолчанию для выполнения кода. Пожалуйста, проверьте выполнение кода для получения более подробной информации.Taskweaver требует Python> = 3.10 . Он может быть установлен с помощью следующей команды:
# [optional to create conda environment]
# conda create -n taskweaver python=3.10
# conda activate taskweaver
# clone the repository
git clone https://github.com/microsoft/TaskWeaver.git
cd TaskWeaver
# install the requirements
pip install -r requirements.txt Если вы хотите установить более раннюю версию Taskweaver, вы можете проверить страницу выпуска, найти тег (например, v0.0.1 ) и установить ее
pip install git+https://github.com/microsoft/TaskWeaver@<TAG>
Перед запуском TaskWeaver вам необходимо предоставить свои конфигурации LLM. Принимая Openai в качестве примера, вы можете настроить файл taskweaver_config.json следующим образом.
{
"llm.api_key" : " the api key " ,
"llm.model" : " the model name, e.g., gpt-4 "
}Taskweaver также поддерживает другие LLMS и расширенные конфигурации, пожалуйста, проверьте документы для получения более подробной информации.
Taskweaver по умолчанию переключился на режим container для выполнения кода, что означает, что код запускается в контейнере. Возможно, вам придется установить Docker и позаботиться о зависимости в контейнере. Пожалуйста, проверьте выполнение кода для получения более подробной информации.
# assume you are in the cloned TaskWeaver folder
python -m taskweaver -p ./project/Это запустит процесс Taskweaver, и вы можете взаимодействовать с ним через интерфейс командной строки. Если все пойдет хорошо, вы увидите следующую подсказку:
=========================================================
_____ _ _ __
|_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____
| |/ _` / __| |/ /| | /| / / _ / __ `/ | / / _ / ___/
| | (_| __ < | |/ |/ / __/ /_/ /| |/ / __/ /
|_|__,_|___/_|_|__/|__/___/__,_/ |___/___/_/
=========================================================
TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request?
Human: ___
Taskweaver также поддерживает Webui для демонстрации, пожалуйста, обратитесь к веб -интерфейсу для более подробной информации.
Taskweaver может быть импортирован в качестве библиотеки для интеграции с вашим существующим проектом, в документах можно найти больше информации
Больше документов можно найти на веб -сайте TaskWeaver.
Демо были сделаны на основе веб -интерфейса, что лучше для отображения сгенерированных артефактов, таких как изображения. Демо, можно также провести в интерфейсе командной строки.
В этом примере мы покажем вам, как использовать Taskweaver для извлечения данных из базы данных и применения алгоритма обнаружения аномалий.
Если вы хотите следовать этому примеру, вам необходимо настроить плагин sql_pull_data в файле project/plugins/sql_pull_data.yaml . Вам нужно предоставить следующую информацию:
api_type : azure or openai
api_base : ...
api_key : ...
api_version : ...
deployment_name : ...
sqlite_db_path : sqlite:///../../../sample_data/anomaly_detection.db Плагин sql_pull_data - это плагин, который извлекает данные из базы данных. Он принимает запрос естественного языка в качестве ввода и возвращает данные о данных в качестве вывода.
Этот плагин реализован на основе Langchain. Если вы хотите следовать этому примеру, вам нужно установить пакет Langchain:
pip install langchain
pip install tabulateВ этом примере мы покажем вам, как использовать Taskweaver для прогнозирования цены QQQ в течение следующих 7 дней.
Если вы хотите следовать этому примеру, вам необходимо убедиться, что у вас установлены эти два требования:
pip install yfinance
pip install statsmodelsДля получения дополнительных примеров, пожалуйста, обратитесь к нашей статье.
Планирование Taskweaver основано на модели LLM. Поэтому, если вы хотите повторить примеры, процесс выполнения может отличаться от того, что вы видите в видео. Например, во второй демонстрации помощник может спросить пользователя, какой алгоритм прогнозирования следует использовать. Как правило, более конкретные подсказки помогут модели создать лучшие планы и код.
Наша статья можно найти здесь. Если вы используете Taskweaver в своем исследовании, пожалуйста, укажите нашу статью:
@article{taskweaver,
title={TaskWeaver: A Code-First Agent Framework},
author={Bo Qiao, Liqun Li, Xu Zhang, Shilin He, Yu Kang, Chaoyun Zhang, Fangkai Yang, Hang Dong, Jue Zhang, Lu Wang, Minghua Ma, Pu Zhao, Si Qin, Xiaoting Qin, Chao Du, Yong Xu, Qingwei Lin, Saravan Rajmohan, Dongmei Zhang},
journal={arXiv preprint arXiv:2311.17541},
year={2023}
}
Этот проект может содержать товарные знаки или логотипы для проектов, продуктов или услуг. Уполномоченное использование товарных знаков или логотипов Microsoft подлежит и должно следовать указаниям Microsoft по товарной марке и брендам. Использование товарных знаков Microsoft или логотипов в модифицированных версиях этого проекта не должно вызывать путаницу или подразумевать спонсорство Microsoft. Любое использование сторонних товарных знаков или логотипов подвержена политике сторонних сторон.
Рекомендуемые модели в этом репо являются просто примерами, используемыми для изучения потенциала систем агента с бумагой в TaskWeaver: структура агента-кода. Пользователи могут заменить модели в этом репо в соответствии с их потребностями. При использовании рекомендуемых моделей в этом репо необходимо соблюдать лицензии этих моделей соответственно. Microsoft не несет ответственности за любое нарушение прав сторонних прав, вызванные вашим использованием этого репо. Пользователи соглашаются защищать, возмещать и удерживать Microsoft безвредны от и против всех убытков, затрат и гонораров адвокатов в связи с любыми претензиями, возникающими из этого репо. Если кто -то считает, что этот репо нарушает ваши права, пожалуйста, сообщите об электронной почте владельца проекта.