커스텀 플로 YAML 스키마
GitLab v19.1커스텀 플로는 flow registry v1 사양 구문을 사용합니다. v1 사양의 일부 필드는 커스텀 플로에서 제한됩니다. 커스텀 플로를 설계할 때 goal 값은 플로를 시작하는 트리거 유형에 따라 달라집니다. 트리거 유형에 대한 자세한 내용은 트리거를 참조하세요.
커스텀 플로 YAML 스키마#
-
Tier: [Free](/19.1/subscriptions/gitlab_credits/#for-the-free-tier), Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated#
Status: Beta
커스텀 플로는
flow registry v1 사양
구문을 사용합니다. v1 사양은 version, environment, components,
prompts, routers, flow 등의 필드를 포함한 전체 YAML 구조를 정의합니다.
v1 사양의 일부 필드는 커스텀 플로에서 제한됩니다. 자세한 내용은 제한된 필드를 참조하세요.
트리거 유형별 goal 값#
커스텀 플로를 설계할 때 goal 값은 플로를 시작하는
트리거 유형에 따라 달라집니다. 플로에는 여러 트리거 유형을 설정할 수 있으며,
각 트리거 유형은 context:goal로 서로 다른 값을 전달합니다.
플로는 설정한 각 트리거 유형에 맞는 goal 형식을 처리해야 합니다.
트리거 유형에 대한 자세한 내용은 트리거를 참조하세요.
컴포넌트는 inputs 필드를 통해 goal에 접근합니다:
components:
- name: "my_agent"
type: AgentComponent
prompt_id: "my_prompt"
inputs:
- from: "context:project_id"
as: "project_id"
- "context:goal"
Mention 이벤트#
사용자가 댓글에서 플로 서비스 계정을 멘션하면, 전체 댓글 텍스트와 리소스 컨텍스트가 goal로 전달됩니다.
goal의 형식은 다음과 같습니다:
Input: <comment_text>
Context: {<resource_type> IID: <iid>}
예를 들어, 사용자가 이슈 #2에 @ai-my-flow Can you work on this?라고 작성하면 goal은 다음과 같습니다:
Input: @ai-my-flow Can you work on this?
Context: {Issue IID: 2}
Assign 및 Assign reviewer 이벤트#
플로 서비스 계정이 이슈 또는 머지 리퀘스트에 담당자로 지정되거나 리뷰어로 지정되면, 해당 리소스의 IID가 goal로 전달됩니다.
예를 들어, 플로 서비스 계정이 머지 리퀘스트 !10의 리뷰어로 지정되면
context:goal 값은 10이 됩니다.
IID와 context:project_id를 함께 사용하여 리소스를 읽을 수 있습니다:
components:
- name: "review_mr"
type: AgentComponent
prompt_id: "review_mr_prompt"
inputs:
- from: "context:project_id"
as: "project_id"
- from: "context:goal"
as: "mr_iid"
Pipeline 이벤트#
파이프라인 이벤트가 플로를 트리거하면, 전체 파이프라인 이벤트 웹훅 페이로드가 goal로 전달됩니다.
제한된 필드#
v1 사양의 일부 필드와 기능은 커스텀 플로가 GitLab에서 일관되게 동작하도록 제한되어 있습니다.
environment#
environment 필드는 커스텀 플로에서 ambient 값만 지원합니다.
chat 및 chat-partial 값은 지원되지 않습니다.
prompts의 model#
prompts 항목 내부의 model 필드는 지원되지 않습니다.
모델은 그룹 또는 인스턴스 설정에서 구성된 모델 공급자에 의해 결정됩니다.
AgentComponent 필드#
response_schema_id 및 response_schema_version 필드는 지원되지 않습니다.
OneOffComponent 필드#
ui_role_as 필드는 지원되지 않습니다.
prompt 파라미터의 stop#
params 항목 내부의 stop 필드는 지원되지 않습니다.
최상위 필드#
v1 사양의 name, description, product_group 필드는 지원되지 않습니다.
커스텀 플로는 이 필드들을 거부합니다.