---
title: "创建agent"
method: POST
path: "/v3/agent"
tags: ["agent", "agent-internal"]
---

# 创建agent

`POST /v3/agent`

创建一个新的 Agent 配置

## Request body

- SwaggerAgentConfigCreateReq
  - `avatar` string — 头像信息
  - `avatar_type` 1 | 2 | 3
  - `config` SwaggerAgentConfigConfig
    - `built_in_can_edit_fields` DaconfvalobjBuiltInCanEditFields
      - `avatar` boolean — 头像
      - `data_source.doc` boolean — 知识来源-文档
      - `data_source.kg` boolean — 知识来源-业务知识网络
      - `input_config` boolean — 输入配置
      - `memory` boolean — 长期记忆配置
      - `model` boolean — KnowledgeSource bool `json:"knowledge_source"` // 知识来源
      - `name` boolean — 名字
      - `opening_remark_config` boolean — 开场白配置
      - `preset_questions` boolean — 预设问题列表
      - `profile` boolean — 描述
      - `related_question` boolean — 相关问题配置
      - `skills` boolean — 技能
      - `skills.tools.tool_input` boolean — skills.tools.tool_input
      - `system_prompt` boolean — 角色指令，包括dolpin模式和非dolpin模式
    - `conversation_history_config` DaconfvalobjConversationHistoryConfig
      - `count_params` DaconfvalobjCountParams
        - `count_limit` integer — 消息数量限制，默认10条，范围1-1000
      - `strategy` 'none' | 'count' | 'time_window' | 'token'
      - `time_window_params` DaconfvalobjTimeWindowParams
      - `token_limit_params` DaconfvalobjTokenLimitParams
    - `data_source` DatasourcevalobjRetrieverDataSource
      - `advanced_config` DatasourcevalobjRetrieverAdvancedConfig
        - `doc` DatasourcevalobjDocAdvancedConfig
          - `document_threshold` number, required — 文档ranker bge相似度阈值：-5.5
          - `documents_num` integer, required — 来源文档数量：8
          - `max_slice_per_cite` integer, required — 每篇文档最大保留切片数：16
          - `rerank_topk` integer, required — CosSimWeight float64 `json:"cos_sim_weight"` BM25Weight float64 `json:"bm_25_weight"` RerankerMethod string `json:"reranker_method"` AccRankingScoreThreshold float64 `json:"acc_ranking_score_threshold"` ChooseMethod string `json:"choose_method"`
          - `retrieval_max_length` integer, required — 召回文档最大长度
          - `retrieval_slices_num` integer, required — 召回切片数：150
          - `slice_head_num` integer, required — 获取上文切片数：2
          - `slice_tail_num` integer, required — 获取下文切片数：0
        - `kg` DatasourcevalobjKGAdvancedConfig
          - `graph_rag_topk` integer, required — 重排序后保留参考信息数量：25
          - `long_text_length` integer, required — 长文本：256
          - `reranker_sim_threshold` number, required — 图谱rerank bge相似度过滤阈值：-5.5
          - `retrieval_max_length` integer, required — EnableRAG *bool `json:"enable_rag" binding:"required"` // 是否启用RAG EnableNGQL *bool `json:"enable_ngql" binding:"required"` // 是否启用NGQL
          - `text_match_entity_nums` integer, required — 文本匹配召回实体数量：60
          - `vector_match_entity_nums` integer, required — 向量匹配召回实体数量：60
      - `doc` DatasourcevalobjDocSource[] — 文档类型数据源
        - `datasets` string[] — 数据集列表
        - `ds_id` string, required — 数据源ID
        - `fields` DatasourcevalobjDocSourceField[], required — 数据源范围列表
          - `name` string, required — 字段名称
          - `path` string, required — 字段路径
          - `source` string, required — 字段来源
          - `type` 'folder' | 'file', required
      - `kg` DatasourcevalobjKgSource[] — 图谱类型数据源
        - `field_properties` object — 实体属性列表
        - `fields` string[], required — 实体类范围
        - `kg_id` string, required — 图谱ID
        - `output_fields` string[] — 结果范围，非必填
      - `kn_entry` DatasourcevalobjKnEntrySource[] — 知识库类型数据源
        - `kn_entry_id` string, required — 知识条目ID
      - `knowledge_network` DatasourcevalobjKnowledgeNetworkSource[] — 业务知识网络类型数据源
        - `knowledge_network_id` string, required — 业务知识网络ID
      - `metric` DatasourcevalobjMetricSource[] — 指标类型数据源
        - `metric_model_id` string, required — 指标模型ID
    - `dolphin` string — Dolphin 语句
    - `input` DaconfvalobjInput
      - `augment` DaconfvalobjAugment
        - `data_source` DaconfvalobjAugmentDataSource, required
          - `kg` DaconfvalobjKgSource[] — 图谱类型数据源
            - `field_properties` object — 实体属性列表
            - `fields` string[], required — 实体类范围
            - `kg_id` string, required — 图谱ID
            - `output_fields` string[] — 结果范围，非必填
        - `enable` boolean, required — 是否启用
      - `fields` DaconfvalobjField[], required — 参数列表
        - `desc` string — 参数描述
        - `name` string, required — 参数（字段）名
        - `type` 'string' | 'file' | 'object'
      - `rewrite` DaconfvalobjRewrite
        - `enable` boolean, required — 是否启用
        - `llm_config` DaconfvalobjLlmConfig, required
          - `frequency_penalty` number — 频率惩罚（-2~2）
          - `id` string — 模型ID，预留参数，目前无用
          - `max_tokens` integer, required — 最大token数
          - `model_type` 'llm' | 'rlm'
          - `name` string, required — 模型名
          - `presence_penalty` number — 存在惩罚（-2~2）
          - `temperature` number — 温度参数
          - `top_k` integer — Top-k参数
          - `top_p` number — Top-p参数
    - `is_data_flow_set_enabled` integer — 是否启用数据流设置
    - `is_dolphin_mode` 0 | 1
    - `llms` DaconfvalobjLlmItem[] — LLM 配置
      - `is_default` boolean — 是否默认（从选择的所有llm中选择一个为默认llm）
      - `llm_config` DaconfvalobjLlmConfig, required
        - `frequency_penalty` number — 频率惩罚（-2~2）
        - `id` string — 模型ID，预留参数，目前无用
        - `max_tokens` integer, required — 最大token数
        - `model_type` 'llm' | 'rlm'
        - `name` string, required — 模型名
        - `presence_penalty` number — 存在惩罚（-2~2）
        - `temperature` number — 温度参数
        - `top_k` integer — Top-k参数
        - `top_p` number — Top-p参数
    - `memory` DaconfvalobjMemoryCfg
      - `is_enabled` boolean — 是否启用
    - `metadata` DaconfvalobjConfigMetadata
      - `config_last_set_timestamp` integer — 配置时间戳(nanoseconds)
      - `config_tpl_version` 'v1'
    - `mode` 'default' | 'dolphin' | 'react'
    - `opening_remark_config` DaconfvalobjOpeningRemarkConfig
      - `dynamic_opening_remark_prompt` string — 动态开场白提示语
      - `fixed_opening_remark` string — 固定开场白
      - `type` string — 开场白类型（固定/动态）
    - `output` DaconfvalobjOutput
      - `default_format` 'json' | 'markdown'
      - `variables` DaconfvalobjVariablesS
        - `answer_var` string — 包含最终回答的变量名
        - `doc_retrieval_var` string — 包含文档检索结果的变量名
        - `graph_retrieval_var` string — 包含图谱检索结果的变量名
        - `middle_output_vars` string[] — 中间输出变量数组
        - `other_vars` string[] — 其他变量数组
        - `related_questions_var` string — 包含相关问题的变量名
    - `plan_mode` DaconfvalobjPlanMode
      - `is_enabled` boolean — 是否启用
    - `post_dolphin` DaconfvalobjDolphinTpl[] — 在用户自定义 dolphin 之后执行的内置 dolphin 语句
      - `edited` boolean — 是否编辑过
      - `enabled` boolean — 是否启用
      - `key` 'memory_retrieve' | 'temp_file_process' | 'doc_retrieve' | 'graph_retrieve' | 'context_organize' | 'related_questions', required
      - `name` string — dolphin块的名称
      - `value` string, required — dolphin块的dolphin语句
    - `pre_dolphin` DaconfvalobjDolphinTpl[] — 在用户自定义 dolphin 之前执行的内置 dolphin 语句
      - `edited` boolean — 是否编辑过
      - `enabled` boolean — 是否启用
      - `key` 'memory_retrieve' | 'temp_file_process' | 'doc_retrieve' | 'graph_retrieve' | 'context_organize' | 'related_questions', required
      - `name` string — dolphin块的名称
      - `value` string, required — dolphin块的dolphin语句
    - `preset_questions` DaconfvalobjPresetQuestion[] — 预设问题列表
      - `question` string — 问题内容
    - `react_config` DaconfvalobjReactConfig
      - `disable_history_in_a_conversation` boolean — 是否禁用单次会话的历史记录
      - `disable_llm_cache` boolean — 是否禁用LLM缓存
    - `related_question` DaconfvalobjRelatedQuestion
      - `is_enabled` boolean — 是否启用
    - `skills` SwaggerAgentConfigSkills
      - `agents` SwaggerAgentConfigSkillAgent[] — Agent 技能
        - `agent_input` SwaggerAgentConfigSkillAgentInput[] — 技能输入
          - `children` SwaggerAgentConfigSkillAgentInput[]
          - `enable` boolean — 是否启用
          - `input_name` string — 输入名称
          - `input_type` string — 输入类型
          - `map_type` string — 值类型
          - `map_value` unknown
        - `agent_key` string — Agent Key
        - `agent_timeout` integer — Agent 工具调用超时时间
        - `agent_version` string — Agent 版本
        - `current_is_exists_and_published` boolean — 当前是否存在并已发布
        - `current_pms_check_status` string — 当前此技能的使用权限状态
        - `data_source_config` SkillvalobjDataSourceConfig
          - `specific_inherit` 'docs_only' | 'graph_only' | 'all'
          - `type` 'inherit_main' | 'self_configured'
        - `intervention` boolean — 是否启用干预
        - `intervention_confirmation_message` string — 人工干预确认消息
        - `llm_config` SkillvalobjLLMConfig
          - `type` 'inherit_main' | 'self_configured'
      - `mcps` SwaggerAgentConfigSkillMCP[] — MCP 技能
        - `mcp_server_id` string — mcp server id
      - `skills` SwaggerAgentConfigSkillSkill[] — skill
        - `skill_id` string — skill id
      - `tools` SwaggerAgentConfigSkillTool[] — 工具技能
        - `intervention` boolean — 是否启用人工干预
        - `intervention_confirmation_message` string — 人工干预确认消息
        - `result_process_strategies` SkillvalobjResultProcessStrategy[] — 结果处理策略
          - `category` SkillvalobjCategory
            - `description` string — 类型描述
            - `id` string — 类型ID
            - `name` string — 类型名称
          - `strategy` SkillvalobjStrategy
            - `description` string — 策略描述
            - `id` string — 策略ID
            - `name` string — 策略名称
        - `tool_box_id` string — 工具箱 ID
        - `tool_id` string — 工具 ID
        - `tool_input` SwaggerAgentConfigSkillToolInput[] — 输入参数配置
          - `children` SwaggerAgentConfigSkillToolInput[]
          - `enable` boolean — 是否启用
          - `input_desc` string — 输入描述
          - `input_name` string — 输入名称
          - `input_type` string — 输入类型
          - `map_type` string — 值类型
          - `map_value` unknown
        - `tool_timeout` integer — 工具调用超时时间
    - `system_prompt` string — 系统提示词
  - `created_by` string — 创建人 uid（内部接口有效）
  - `is_built_in` 0 | 1
  - `is_system_agent` 1 | 0
  - `key` string — agent 标识
  - `name` string — 名字
  - `product_key` string — 所属产品标识
  - `profile` string — 简介

## Response `201`

成功

- SwaggerAgentConfigCreateRes
  - `id` string — agent id
  - `version` string — agent版本

## Other responses

- `400` — 请求参数错误
- `401` — 未授权
- `403` — 禁止访问
- `500` — 服务器内部错误

---

[API](https://skmtc.net/kweaver-ai/apis/agent-factory-api.md) · [All operations](https://skmtc.net/kweaver-ai/apis/agent-factory-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kweaver-ai/agent-factory-api/versions/94c8acc695b9/schema)
