Обуздать
Таким образом, понимание не имеет смысла, а только остановиться здесь, в общем, поместить это здесь.
Потому что, когда разумное тело все еще «устанавливает модель один раз, а затем дает единый ответ», этих слов «Подсказка», «Вызов инструмента» и «Память» действительно почти достаточно. Но как только разумное тело начинает выполнять реальную задачу, например непрерывное выполнение многоэтапных операций, доступ к файловой системе, управление промежуточным состоянием, обработку прерываний, принятие одобрения и даже поручение разумному телу некоторых задач, проблема меняется.
Это момент, когда система действительно решает, что систему нельзя разрушить, часто это не сама модель, а внешний слой модели, исполняющий каркас.
Обуздать.
而 MAF 1.4 стоит посмотреть, он именно здесь. Это не единый уровень возможностей, а уровень, более близкий к фактической поверхности управления временем выполнения проекта.
这篇文章Я хочу выполнить последовательность из четырех шагов:
- Что такое жгутовая инженерия
- Это ключевая концепция того, почему он становится разумным.
- МАФ 1.4 как это работает
- Значение Harness для .NET 例如,看懂
一、Что такое жгутовая инженерия
先说我更设计同 определение.
Судя по существующим данным, Harness Engineering — это, по сути, слой «исполняемого файла» за пределами модели, «способности ИИ ограничивать стабильный результат. Это делается не только для того, чтобы сделать модель умнее, но и для того, чтобы сделать систему более исполняемой».
再直白一种:
Harness Engineering заботится не о «модельной модели», а об «интеллектуальной технологической модели».
Если он сжат в соответствии с определением существующей Wiki, он будет удовлетворять как минимум четырем требованиям: ввод, шаги, проверка и 兜底.
Я думаю, что это определение очень точное.
Потому что, как только разумное тело войдет в реальный мир, оно сразу же столкнется с рядом весьма специфических проблем.
-
Как вы выполняете работу?
Не все входные данные следует передавать непосредственно в модель. Некоторые из них — бизнес-задачи, некоторые — команды управления, некоторые — просто обратная связь с окружающей средой. -
Как это работает?
Сложные задачи невозможно выполнить -
Как управлять государством
Задача наполовину выполнена, каков текущий прогресс, что было произведено, где промежуточные документы, какие шаги выполнены, это невозможно только в контексте. -
Безопасный доступ к окружающей среде
Как только разумное тело начнет читать документы, вызывать внешние инструменты, модифицировать ресурсы, оно обязательно выйдет за границы полномочий, на путь школьной проверки, просмотра и отката. -
Это как обращаться с контекстом
短这些里里行设计卉强前强剧体育。 Длинная задача после запуска, контекст становится длиннее, шума становится все больше и больше, нет механизма сжатия и конвергенции, последняя большая вероятность выполняется. -
Как восстановить после сбоя
Если вы можете каждый раз использовать только 整段重来, эта система не стоит усилий.
Вот почему я с большей охотой внедряю Harness Engineering.
Если вы говорите, что оперативное проектирование удобнее, то Harness Engineering удобнее, тогда Harness Engineering удобнее.
Здесь можно сначала использовать одну картинку, один раз сжать эту концепцию.
ТД А блок-схема[用户目标] –> Б[Harness 执行脚手架]
Б –> С[任务输入治理]
Б –> Д[步骤拆解]
Б –> Е[状态管理]
Б –> Ж[环境访问边界]
Б –> Г[验收与兜底]
С –> Ч[模型/Agent]
Д –> ОН –> ВЧ –> ХГ –> Ч
Суть этого выражения 张图想 очень проста.
Конечно, модель по-прежнему является основным источником энергии, но что действительно делает ее инженерной системой, так это внешний слой Ремня.
Эта глава будет собрана за один раз.
Harness Engineering — это не функциональный плагин для разумного тела, а набор «исполняемых» запущенных кейсов для разумного тела. Его решение – не «плохая модель», а «система стабильна и не стабильна».
二、MAF 1.4 Что делать: 拉进主线
Я понимаю, что Harness Engineering,再回头看 MAF 1.4,就 легче понять фокус。
Многие люди видят примечания к выпуску и видят Harness, первая реакция может быть такой: Microsoft предлагает новые характеристики.
Но если вы посмотрите на существующий материал, я думаю, что более точное суждение будет следующим:
MAF 1.4 – это не просто «поддержка Harness», но он начинает интеллектуальную разработку с «能力玻装»往»把微玨玨技把把报王装»往»把报绨玨 начинает внедрять интеллект.
Почему это важно?
Потому что MAF уже заполнил еще одну строку, а именно «Навыки».
Способности 更像能动包。 后手机老:智能体会什么。 以以经后春设计, сценарии, ссылки, ресурсы,设后校情上是电影者设计。
«Упряжь решает еще одну задачу: разумное тело, как это сделать.
Это не замещающие отношения, а передние и задние отношения.
Способности решать «会什么».
Ветчина 果成 «技最是全地把事做完».
Вот почему я так думаю: путь MAF к версии 1.4 начинает многое прояснять: 先把 модульность возможностей, 再把 реализация инженерных решений.
新句话说,Способности 更像能力应用山,Обуздание 更像设计时正解。
Эта часть также очень важна.
Если вы используете Harness только в качестве API или в качестве образца, вы увидите MAF 1.4.
三、MAF 1.4 — как реализовать этот механизм
Далее пройдите путь от концепции к реализации.
Из имеющихся двух материалов МАФ 1.4 как минимум давал четкий сигнал в четырех направлениях.
1. План команд: «Ввод задач» и «Ввод управления».
Это, на мой взгляд, самый примечательный момент.
Судя по материалу, MAF представил ICommandHandler в реализации, связанной с Harness, такой как интерфейс управления, одновременно с 溚僀/todose』/todose, такой как точка входа команды.
Что это значит?
Это означает, что фреймворк начинает четко различать входные данные двух классов:
- 要交给景件体вводится задача, которую необходимо выполнить.
- 要交经时间时间电视的команда управления
Этот раздел очень важен.
Потому что, как только все вводимые данные станут подсказками на естественном языке, система навсегда останется на стадии «окна чата». Вы не можете позволить пользователю четко просматривать режим, проверять статус и переключать состояние выполнения, а также сложно построить стабильное взаимодействие во время выполнения.
但После появления командной плоскости разумное тело больше не является просто объектом разговора, и это уже возможный объект, а не просто объект разговора, и это возможность.
На самом деле это типичное воплощение мышления Харнесса.
不是以上主京都交经教学电影,技把把把一个电影拉回表来
2. Состояние самолета: 把电影从从设计里解解的出口.
Второй наиболее очевидный сигнал, первая партия появления или усовершенствования Поставщика, например:
- ТодоПровайдер
- АгентМодеПровидер
- филепамятьпровидер
- Филеаксесспровидер
单看名字电影看出,Это не 在单纯前API, но это то, что может быть изначально независимо управляемый модуль состояния.
Почему это важно?
Потому что в демо много интеллекта, там есть ссылка: все дела – история чата.
План задач поступил.
средний результат закрыт.
剧电影剧品。
Запись доступа к файлу также вошла.
Короткую задачу еще можно выполнить, задачу длинную система начинает глючить.
而 TodoProvider、AgentModeProvider значение этого класса компонентов, т.е. «план задач», «текущий режим», «статус внешнего документа», эти элементы, удаленные из истории диалога, становятся видимыми объектами управления.
Это показывает, что MAF работает из «单轮推理器»往»带电影机支正视体».
Я думаю, что это очень важное изменение.
Потому что это действительно разумно
3. Управление контекстом: начните предварительное управление долгосрочной проблемой.
第三界设计, стратегия сжатия контекста.
Это слово легко понять, но перевод на самом деле очень простой:
Задача длинная, контекст нельзя расширить без верхнего предела, его надо сжимать, абстрагировать и собирать.
Мне это очень хорошо знакомо.
Поскольку многие люди теперь говорят разумно, они также остаются в воображении, что «контекст модели становится длинным, поэтому длинная задача может быть решена».
Контекст не серебряный.
В контексте настоящей проблемой становится:
- Информации об истории становится все больше и больше.
- все больше и больше шума
- Модель начала ловить ключ
- Предыдущее решение и последующая реализация становятся проще
Следовательно, система, которая может выполнять длительную задачу, должна активно обрабатывать расширение контекста.
不是一股脑全塞论过,了要要可以任使电影, 什么该abstract, 什么设敶惶惶惶惶收
MAF в слое образца ветчины.
4. Граница среды с 委托能力: от «会调工作» до «Задачи по обеспечению безопасности».
Четвертое направление также важно.
В материале можно увидеть некоторые очевидные сигналы контроля границ, например:
- проверка маршрута
- средства утверждения
- Филеаксесспровидер
- субагент-поставщик
Решение MAF по решению суда:
После того, как разумное тело действительно входит в уровень исполнения окружающей среды, проблема больше не в том, что «оно не может использовать инструменты», а в том, что «оно не может использовать инструменты в пределах границ, безопасности и защищенности».
Это два раза.
会电影工作,可说是设计有设计设计。
Если инструмент вызывается в рамках области видимости, то система будет работоспособна.
Точно так же непросто использовать поставщика субагента «Агент поддержки».
На самом деле там говорится: основа начинается с разделения задач, ввода в эксплуатацию и координации.
Это означает, что Harness является не только оболочкой агента, но и подготавливает сеть к выполнению.
Здесь я предлагаю использовать единую картинку, см. верхний четырехслойный механизм.
ТД А блок-схема[用户任务] –> Б[Harness 控制层]
Б –> С[命令处理 Command Handlers]
Б –> Д[状态管理 Providers]
Б –> Е[上下文压缩与收敛]
Б –> Ж[环境访问与权限边界]
Б –> Г[子智能体委托]
С –> Ч[Agent Runtime]
Д –> ОН –> ВЧ –> ХГ –> ЧЧ –> Я[模型推理]
Ч –> Дж[工具调用]
Ч –> К[任务结果]
Суждение, лежащее в основе этой картины:
MAF 1.4 — это не единый API, а уровень реальной поверхности управления во время выполнения.
Это то же самое.
Если вы посмотрите на MAF 1.4 с точки зрения Harness Engineering, вы обнаружите, что это «проект» из четырех частей: разделение команд и задач, отображение статуса управления, управление долгосрочным контекстом, установление границ окружающей среды и передача способностей. Эти несколько вещей соединяются вместе, и разумное тело начинает напоминать систему, а не просто игрушку для общения.
Пример кода .NET: Harness
Концепция 光讲 все еще довольно слаба.
Итак, на этот раз я хочу использовать минимальный пример кода, чтобы поговорить об этой проблеме.
Сцена простая.
Учитывая несколько тем исследования, сначала соберите исходный материал, а затем создайте реферат.
Эта сцена не выглядит сложной, но подходит для объяснения ценности Harness. Потому что оно, естественно, содержит две стадии: стадии
- собирать информацию
- Объединить результаты
Если вы не используете Harness, мы обычно знаем, как его написать?
Вероятность того, что он написан в общем методе, который последовательно вызывает два объекта. Таким образом, он, конечно, может работать, но имя задачи, ввод-вывод, запись выполнения и последующая точка расширения будут сравниваться свободно.
而用了 Harness После этого основное внимание уделяется не «КОДАМ 少写几行», а, прежде всего, реализации 骨架立立第二.
См. код.
1. 先全名了个安全子能力
using System;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
public class ResearchAgent
{
public Task CollectAsync(string[] topics, CancellationToken cancellationToken)
{
var results = topics
.Select(topic => $"Collected raw information about: {topic}")
.ToArray();
return Task.FromResult(results);
}
}
public class SummaryAgent
{
public Task SummarizeAsync(string[] rawResults, CancellationToken cancellationToken)
{
var summaries = rawResults
.Select(item => $"Summary => {item}")
.ToArray();
return Task.FromResult(summaries);
}
}
Этот код очень прост.
ResearchAgent отвечает за «сбор исходной информации».
SummaryAgent отвечает за «абстрактность».
Если это просто демо, то здесь этого достаточно. Но проблема есть и здесь: это всего лишь два обычных класса, и у них нет четкой структуры выполнения задач.
Поэтому вторым шагом является определение Harness.
2. 用 Ветчина 把来来手机电影电影
using Microsoft.MAF.Harness;
public class ResearchHarness : TaskHarness
{
public ResearchHarness()
{
RegisterTaskHandler(
"ResearchAndSummarize",
async (topics, token) =>
{
var researcher = new ResearchAgent();
var summarizer = new SummaryAgent();
var rawResults = await researcher.CollectAsync(topics, token);
var summaries = await summarizer.SummarizeAsync(rawResults, token);
return summaries;
});
}
}
В этом коде, я думаю, стоит особо отметить 4 пункта.
Во-первых, четко определяется имя задачи.
不是 «随手调一个教育», но поставил четкую задачу: ResearchAndSummarize。
На демонстрации эта вещь выглядит формальностью, но она очень важна в процессе. Потому что, как только задача названа, вы можете ее регистрировать, констатировать, отслеживать, просматривать и корректировать с учетом нее.
Во-вторых, граница ввода-вывода четко определена.
Входные данные здесь — строка[] предметы, вывод представляет собой строку[] резюме.
Это означает, что границы задачи начинают проясняться. Система знает эту задачу.
В-третьих, структурные этапы заметно укрепились.
Используйте CollectAsync, SummarizeAsync.
подскажите 这使名电影像废话,可以使用。 Потому что многие интеллектуальные системы организма изначально основаны на модели «самостоятельности».
В-четвертых, становится ясна последующая точка расширения.
Сейчас этот пример очень маленький, но вы легко можете себе представить, что можно добавить позже:
- Результаты rawResults и результаты поиска
- Перед суммированием асинк
- Напишите все обновления в процессе
- Когда задача слишком длинная, контекст сжимается
- Использование субагента CollectAsync и его субагента.
В этом смысл упряжи.
Это не делает сегодняшний код внезапно умнее, но делает код завтрашнего дня проще.
3. единая запись
Следите за выполнением кода.
var harness = new ResearchHarness();
var topics = new[]
{
"Microsoft Agent Framework",
"Harness Engineering",
".NET Agent Runtime"
};
var summaries = await harness.ExecuteTaskAsync(
"ResearchAndSummarize",
topics,
CancellationToken.None);
Console.WriteLine("Final Summaries:");
foreach (var summary in summaries)
{
Console.WriteLine(summary);
}
Если вы видите только поверхность, между этим кодом и обычным методом нет большой разницы.
Но на что действительно стоит обратить внимание, так это на то, что организация, стоящая за этим, изменилась.
раньше это могло быть:
основной метод
→ новые два объекта
→ заказ звонка
→ вывод результатов
Теперь стало:
единая запись
→ 按模型名论度
→ 按时间时间设计方法
→ 产出结果结果
这小金展开性是:你手机不是“更多了米”, но 在“正解一个被被硕硚硚研究托瀻个米”
Чтобы иметь еще одну точку зрения, я снова привожу этот самый маленький пример и рисую единую временную диаграмму.
Участник SequenceDiagram U как участник H как участник ResearchHarness R как участник ResearchAgent S как SummaryAgent U->>H: ExecuteTaskAsync(“ResearchAndSummarize”, темы) H->>R: CollectAsync(topics) R–>>H: rawResults SummarizeAsync(rawResults) S–>>H: сводки H–>>U: окончательные сводки
Это изображение выглядит очень просто, но его достаточно, чтобы объяснить одно ключевое отличие:
Эта программа не является полноценной бизнес-логикой, но это бизнес-логика, которую можно зарегистрировать, реализовать и расширить.
4. Этот кодекс поэтому и называется «инженерным».
Я хочу еще раз подчеркнуть этот момент.
Поскольку многие люди видели этот пример, первая реакция была такая:
«Это не то же самое, что первый слой?»
Судя по строке кода, это действительно выглядит так.
Но с точки зрения проекта это не так.
Основное отличие здесь:
-
普通计算更多更多 временный сценарий
Конечно, идентичность задачи не ясна, структура выполнения не управляется систематически. -
Ветчина 更多更像电视时契约
Имя задачи, ввод-вывод, запись выполнения, начало стандартизации. -
普通明是不天物格格电视安全
你视频想加журнал, просмотр, восстановление, переключение режимов, часто требуется самопроверка. -
Хэм 天然名种前作往 «контрольное лицо»演进
Вот тут-то MAF 1.4 действительно заслуживает внимания.
Поэтому наиболее важной частью этого примера кода является то, что он не завершает действие «исследование и анализ», а действие завершает «исследование и анализ» — одну из ключевых функций:
Это то же самое.
Ценность Harness не в том, чтобы простая демонстрация выглядела более продвинутой, а в том, чтобы превратить ее из «одноразового скрипта» в «расширяемый модуль выполнения задач».
五、总作研究Abilities 和Harness 第一季
Пишите сюда, многие естественно задают вопрос:
那 Способности 和Использовать, в конце концов, каковы отношения?
Я охотнее использую одно предложение из самых простых слов, чтобы подвести итог:
Способности 枈果 «会什么», Обуздание 果と «死作干».
Объедините эти два фактора и сформируйте два наиболее важных уровня интеллектуального проектирования.
Первый уровень, уровень возможностей.
То есть Навыки.
把 инструкции, сценарии, ссылки, ресурсы.
Второй этаж, представительский этаж.
то есть Хам.
把 Ввод задач, шаги, расположение, управление состоянием, управление контекстом, границы полномочий, поручить выполнение этих возможностей для организации, чтобы интеллектуальное тело могло стабильно выполнять.
Поэтому я думаю, что на MAF 1.4 стоит обратить внимание не потому, что в него добавлен новый термин, а потому, что он позволил двум слоям начать формировать новый термин.
Иметь навыки, интеллект体才不至于空心。
有Hardness, intelligent体才不至于失控。
Это предложение также занимает на одно предложение больше.
Нет навыков, нет интеллекта.
Нет ремня безопасности, разумное тело может быть, что это такое?
六、最最最最这些 MAF 1.4
Если позвольте мне вынести суждение на основе сравнения, я скажу следующее:
Направление выпуска MAF 1.4 правильное, сигнал очень четкий, но экология еще рано.
Почему ты говоришь направление?
потому что начать заполнять интеллектуальное тело проекта действительно сложно, это часть способности реальных денег:
- команда управления
- видимое состояние
- 长模型方法电影
- пограничная среда
- порученная задача
Эти вещи не кричащие и не подходят для специальной демки, но точно определяют фреймворк, который нельзя использовать в продакшене.
Почему так рано?
Потому что от поддержки структуры до фактического формирования зрелой экосистемы между ними еще есть много слоев:
- Более заметный
- Более полный опыт отладки
- Более стабильные инструменты управления
- 更低的разработчики 心智设计
- 更性感的лучшая практика и система выборки
Так что я не скажу, что MAF 1.4 «полностью зрелый».
Но я скажу, оно уже начало идти по правильному пути.
Таким образом, это уже не просто «позволить разумному телу подключиться к модели, настроить инструмент», а «поместить разработку интеллектуального тела на уровень инженерной реализации».
заключение
Многие люди сегодня используют модель «Вызов инструмента», «Рабочий процесс».
但Если вы действительно начнете длинную задачу, выполните ее по-настоящему и создадите сцену, вы быстро обнаружите, что настоящий пробел часто заключается не в самой модели, а во внешнем слое Хэма.
Итак, если я позволю себе суммировать смысл MAF 1.4 в одном предложении, я встречу вас так:
MAF 1.4 действительно завершен, это не новая функция, а интеллектуальный корпус от «стабилизации» до «стабилизации».
Если вы в последнее время также интересуетесь разработкой агентов .NET, я предлагаю вам сосредоточиться на 看两山:
Один уровень — Навыки, который определяет, что такое интеллект.
Один слой — это ремень безопасности, который определяет разумное тело, как стабилизировать его.
Если эта статья для вас, добро пожаловать в сборник. Я также продолжу писать в этой строке проектирование MAF, Hermes и .NET Agent, насколько это возможно, между «能跑 demo» и «能做电视», и проясню это.