feat: unify Agent Platform response collection using YAML
What does this merge request do and why?
This MR unifies the way evaluations are run when targeting features implemented in DAP, including Agentic Duo Chat. Please refer to the example below or check the updated documentation for more details. The main goal is to have one CLI command and use YAML configs to setup different aspects of the evaluation pipelines.
Closes #781 (closed)
Related to gitlab-org&18721
BLOCKED by !1629 (merged)
How to set up and validate locally
version: 1
env:
executor_type: "go"
params:
bin_path: "duo-workflow-executor/bin/duo-workflow-executor"
langsmith:
dataset: "duo_chat.cot_qa_docs.1"
split: "base"
offset: 0
limit: 1
flow:
flow_type: "duo_chat"
params:
target_project: "gitlab-duo/test"
agent_privileges: [1,2,4] # READ_WRITE_FILES, READ_ONLY_GITLAB, RUN_COMMANDS
# Ref: https://gitlab.com/gitlab-org/gitlab/blob/13461f57b9f087055e23651eead75cdc716c1cbb/ee/app/models/ai/duo_workflows/workflow.rb#L34
pre_approved_agent_privileges: [1,2,4]
pipe:
inference: true
poetry run cef agent-platform evaluate .gitlab/agent_platform_templates/duo_chat.yaml
Merge request checklist
-
I've ran the affected pipeline(s) to validate that nothing is broken. -
Tests added for new functionality. If not, please raise an issue to follow up. -
Documentation added/updated, if needed.
Edited by Alexander Chueshev