# 致远新一代智能体产品家族CoMi V1.1安装部署手册Linux

北京致远互联软件股份有限公司 2025年7月

# 前言

本手册适用于到Linux或信创系统服务器命令行部署CoMi核心服务。

如客户环境提供了SSH远程访问CoMi服务器能力,推荐使用CoMiBuilder工具远程可视化部署,具体参考另一份 工具可视化部署CoMi 手册。

# 修订记录

修订内容 修订时间
持续完善,增加部署过程中的问题总结 2025-7-29
新增CoMi 1.1安装部署手册 2025-7-22

# 在线化资料支持

手册存在不定期更新,为了方便您获取最新资料,本手册在致远开放平台也放置了一份,建议您收藏以下地址,并尽量使用在线手册以获得最新的部署信息:https://open.seeyoncloud.com/#/faq/vuepressFile/v1/share?url=Z2ptZkplPjM3ODM=

# 环境准备

# 适配协同版本

CoMi V1.1适配以下协同OA版本:

协同OA版本和BuildID 适配CoMi版本 备注
V5产品线 V10.0 B250710及以上 CoMI V1.1 协同OA的BuildID低于CoMi适配版本则需要升级协同
V5产品线 V9.0SP1 B250715及以上 CoMI V1.1 协同OA的BuildID低于CoMi适配版本则需要升级协同

# 依赖商务授权

使用本平台,需要如下授权信息:

编号 授权信息 获取路径
1 CoMi智能体套件(CoMi运行引擎、CoMi超级入口、CoMi标准智能体) 致远商务侧下单申请,计价规则见商务报价
2 (按需)智能问数(协同驾驶舱高级版+comi智能问数) 致远商务侧下单申请

# 环境要求

分类 支持情况
权限要求 需要以管理员(root)权限操作
支持操作系统 Windows Server 2012以上(单独部署手册)
CentOS 7、CentOS 8
RedHat 7、RedHat 8
openEuler 24.03-LTS
Anolis 8.10
Ubuntu 22.04 LTS
麒麟V10
统信UOS V20
服务器类型 x86、Arm

# 网络架构图

# 简单部署模式

客户端、协同OA与CoMi相关服务的交互关系如下图所示:

1751448303228.png

注意:

协同服务访问公网云服务接口说明:安全助理智能体会定期采集外部热门威胁情报,需要添加网络白名单的地址:

(1) 致远官方漏洞库查询接口:https://service.seeyon.com

(2) 国际漏洞库CVE查询工具 :https://www.cve.org;https://cveawg.mitre.org 详细说明见《CoMi用户操作手册》。

# 高可用部署模式

CoMi暂不支持高可用部署模式

# 所需服务列表

以下是CoMi V1.1运行环境所需的组件,需要按照要求进行部署:

依赖组件 版本 端口 资源配置 说明
Nginx 选择较新版本 按需 CPU>=2C/内存>=4G/磁盘100G 必须,代理各服务请求,与协同的Nginx共用
向量数据库qdrant 1.13.6或以上 6333(HTTP)、6334(gPRC) CPU>=4C/内存>=8G/磁盘200G 必须,知识库向量存储需要
关系型数据库 支持范围见部署章节 - CPU>=4C/内存>=8G/磁盘200G 必须,AI-Manager依赖此组件,可共用协同的数据库服务(针对AI新建一个表空间/数据库)
AI-Engine v1.1 8000 CPU>=4C/内存>=8G/磁盘200G 必须,执行Agent智能体语义理解、调用执行逻辑
AI-Security v1.1 9000 CPU>=4C/内存>=8G/磁盘200G 非必须,安全服务,提供敏感词检测等安全策略的控制
AI-Manager v1.1 8181 CPU>=4C/内存>=16G/磁盘200G 必须,提供CoMi平台的维护管理及配置功能
智能问数BI V2.1 8058、5432 详见协同驾驶舱高级版BI手册 非必须,如涉及智能问数需求需要部署,资源和手册见对应独立手册
Embedding模型 - - 支持公有云模型或本地模型 必须,通用文本向量模型,要求符合openAI接口规范
LLM大语言模型 - - 支持公有云大模型、本地模型 必须,要求符合openAI接口规范+支持Functioncalling的模型
ReRank模型 - - 支持公有云大模型、本地模型 非必须,相关性排序模型可提升向量数据检索质量,要求符合openAI接口规范
协同主服务 参考“适配协同版本”章节 - 老客户已部署协同无需增配;
全新客户参考协同部署手册准备资源
必须,CoMi必须在协同产品平台下运行

注意:

  • CoMi V1.1运行环境建议独立部署(不与协同部署在一个服务器),需要至少一台服务器,硬件资源是组件资源配置的总和。
  • 必须使用Nginx:由于CoMi前端会使用协同OA的用户身份信息(Session),基于浏览器的同源策略要求,必须使协同OA和Comi服务在同一个域内(协议、域名、端口一致)。因此,必须使用Nginx将协同OA和CoMi相关服务放在同一server段中代理。
  • 以上清单为CoMi V1.1服务器配置,随着CoMi版本升级,功能增强,服务器所需配置可能增加,建议在CoMi V1.1总配置基础上再预留足够多的硬件资源,为CoMi升级版本扩展服务准备。
  • LLM大语言模型、Embedding文本向量模型、ReRank模型涉及复杂的技术架构和高配置要求,需要客户单独采购,由专业厂商提供服务器和配置推荐,或使用公有云模型接口。
  • LLM大语言模型要求遵守OpenAI接口规范,同时要求模型支持FunctionCalling功能(如不支持,涉及调用协同和第三方的智能体应用均无法使用)。
  • 公司战略合作与生态产品团队与模型专业供应商有建联,推出了<致远COMI一体机解决方案-本地大模型>方案,如客户需要我们代采,可与生态团队联系询价。

内部测试LLM大模型支持情况参考:

模型 OpenAI规范 Function call 说明
通义千问(qwen2.5、qwen3、qwen-plus等) 支持 支持 推荐
深度求索(DeepSeek-V3-0324) 支持 支持 推荐
深度求索(DeepSeek-R1) 支持 不支持 DeepSeek-R1早期版本不支持functionCall
0528版本对functionCall支持不完善
OpenAI(GPT-4o) 支持 支持 GPT-4o是著名的国外大语言模型

内部测试Embedding文本向量模型参考:

  • BGE-M3(遵守OpenAI接口规范)
  • BGE-Large(遵守OpenAI接口规范)
  • 阿里百炼平台-所有通用文本向量模型(遵守OpenAI接口规范)

# 服务器部署规划示例

如客户服务器有限,可以参考如下规划部署服务:

服务器 部署服务
服务器1 协同服务、Nginx服务
服务器2 数据库服务
服务器3 qdrant、AI-Engine、AI-Security、AI-Manager、智能问数服务(按需)
Embedding文本向量模型(如bge-m3)(本地大模型由第三方专业厂商给方案)
LLM大语言模型(本地大模型由第三方专业厂商给方案)
ReRank相关性排序模型(本地大模型由第三方专业厂商给方案)

注意:

  • 多个服务部署在一台服务器,所需资源是每个组件服务的总和,如部署CoMi V1.1的“服务器3”基础组件,资源理论是:4C/8G+4C/8G+4C/8G+4C/16G=16核心40G内存以上,如涉及智能问数服务还依赖更高资源(问数所需资源见 CoMi智能问数手册)。
  • 本规划仅做参考,不是绝对要求,项目上可根据用户实际服务器资源做规划。

# CoMi部署步骤

# 总体步骤

CoMI总体执行步骤为:客户提前准备大模型==>初始化CoMi数据库==>部署qdrant向量数据库==>部署配置Engine服务==>部署配置Security服务==>部署配置Manager服务==>部署配置Nginx==>更新授权重启协同==>协同获取API KEY==>二次配置重启Engine==>协同配置大模型==>协同智能体应用初始化==>应用授权用户使用。

如涉及智能问数,可以在以上完成后,再单独参考智能问数部署配置手册部署配置问数相关服务。

# 下载CoMi部署包

从商务公布的安装程序下载地址(产品线为AI)下载CoMi部署包,将部署包上传至CoMi应用服务器。部署包主要包含如下内容:

1753365967801.png

CoMi迭代速度较快,建议不要留存旧版本部署包,每次部署前均从商务地址下载最新的安装包,以获得最新的产品能力。

# (必须)操作系统环境配置调整

在进行安装部署前,先按照如下配置优化Linux相关系统参数:

预装部署所需的命令:

# Red Hat系列,使用yum命令安装,如当前系统提示yum不可用,则尝试使用apt
yum update
yum install tar curl net-tools unzip vim telnet -y

# 基于Debian的系统(如Ubuntu)使用apt预装组件
sudo apt update
sudo apt install tar net-tools unzip vim telnet -y

# 基于欧拉openEuler、龙蜥Anolis OS等系统使用dnf安装
sudo dnf update
sudo dnf install tar curl net-tools unzip vim telnet -y

修改Linux内核参数:

# 编辑配置文件,并在文件末尾添加参数配置
vim /etc/sysctl.conf

net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_window_scaling = 0
net.ipv4.tcp_sack = 0
net.ipv4.tcp_timestamps = 0

# 读取 /etc/sysctl.conf 文件中的设置,使其立即生效
sysctl -p

修改Linux最大进程数最大文件打开数:

通过 vim /etc/security/limits.conf 命令编辑此文件添加以下内容

# open files  (-n)
* soft nofile 65535
* hard nofile 65535
# max user processes  (-u)
* soft nproc 65535
* hard nproc 65535

以上配置完成,重启操作系统,执行 ulimit -a 命令检查open files和max user processes是否都变成65535

以下为临时生效方法:

# 设置当前会话中立刻生效
ulimit -n 65535  # 设置最大打开文件数量
ulimit -u 65535  # 设置最大进程数

部署前先关闭selinux:

# 执行如下命令永久关闭
sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
# 重启操作系统生效
sudo reboot

# 临时禁用(免重启),临时验证关闭效果可用此法,如果确认关闭有效,务必永久关闭
sudo setenforce 0

# 一、大模型准备和调试

部署前,需要客户提前准备产品适配范围内的大模型,通过CURL命令测试大模型是否可用。

CoMi所依赖的大模型需要符合openAI接口规范,LLM大语言模型还需要支持functioncalling,模型部署模式公有云和本地均支持。

# 方案一:准备和调试公有云模型

如用户使用公有云大模型,需要用户自行选择公有云平台、注册帐号、自选适合额模型、获取模型的baseurl和api key信息。收费规则详询公有云模型平台。

本章节以阿里云百炼平台为例,获取模型方法如下:

1、先访问【阿里百炼平台 (opens new window)】,使用阿里系的帐号登录官网

2、通过模型广场找到需要接入的大模型:

1753368310284.png

3、模型详情有介绍每种模型特点、模型价格、上下文长度、QPM限制等,建议使用deepseek-v3这类通用语言模型--响应较快,deepseek-r1推理模型推理时间较长。

1753371160251.png

4、通过“API参考”页面获取大模型的curl测试命令:

1753370870749.png

5、在comi服务器通过curl命令测试大模型是否能连通,windows下可以参考如下代码格式执行命令测试:

# $DASHSCOPE_API_KEY注意替换为模型真实API Key
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions -H "Authorization: Bearer $DASHSCOPE_API_KEY" -H "Content-Type: application/json" -d "{\"model\": \"deepseek-v3\",\"messages\": [{\"role\": \"user\",\"content\": \"9.9和9.11谁大\"}]}"

1753372524260.png

6、如测试成功,根据测试url记住三个关键参数,后续comi部署需要:

  • Base URL:取curl地址/v1/chat/前面的路径,如本示例的地址为https://dashscope.aliyuncs.com/compatible-mode
  • model模型名称:对应curl中"model"的值,如本示例的 deepseek-v3
  • API Key:取百炼官网个人的API KEY,如本示例 Authorization: Bearer 后面这段内容

7、同样方法,通过云平台获取Embedding通用文本向量模型,建议尽量选择性能质量更优的模型,一旦CoMi设置好默认向量模型,后续无法修改:

1753372913193.png

# 方案二:准备和调试本地模型

如用户使用本地大模型,需要用户自己提前准。本地模型需要遵守如下要求:

  • LLM通用语言模型和Embedding文本向量模型必须,ReRank重排序模型非必须(有更好)

  • 大模型符合openAI接口规范即可被CoMi接入,LLM大语言模型还需要支持functioncalling

  • 推荐模型见 环境准备 章节

如用户已经准备好本地大模型,让客户提供CURL测试命令。或者参考如下测试命令格式,必须确保测试通过再进行后续部署操作:

如果私有LLM大语言模型curl带有API KEY,参考如下示例测试:

curl -X POST http://10.1.131.174:11434/v1/chat/completions -H "Authorization: Bearer sk-119cb6255f49449" -H "Content-Type: application/json" -d "{\"model\": \"qwen-plus\",\"messages\": [{\"role\": \"user\",\"content\": \"9.9和9.11谁大\"}]}"

# 上述命令中的参数参考:
# Base URL:对应http://10.1.131.174:11434(取curl地址/v1/chat/前面的路径)
# model模型名称:对应curl中"model"的值,如本示例的qwen-plus
# API Key:取本示例 Authorization: Bearer 后面这段内容 sk-119cb6255f49449

如果私有LLM大语言模型curl不带API KEY,参考如下示例测试:

curl -X POST http://10.1.131.174:11434/v1/chat/completions -H "Content-Type: application/json" -d "{\"model\": \"qwen-plus\",\"messages\": [{\"role\": \"user\",\"content\": \"9.9和9.11谁大\"}]}"

# 上述命令中的参数参考:
# Base URL:对应`http://10.1.131.174:11434(取curl地址/v1/chat/前面的路径)
# model模型名称:对应curl中"model"的值,如本示例的 qwen-plus

私有Embedding文本向量模型,参考如下示例测试:

curl --location 'http://192.168.94.130:11434/v1/embeddings' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "bge-m3:latest",
    "input": "风急天高猿啸哀,渚清沙白鸟飞回,无边落木萧萧下,不尽长江滚滚来",
    "dimension": "1024",
    "encoding_format": "float"
}'

# 上述命令中的参数参考:
# Base URL:对应`http://192.168.94.130:11434(取curl地址/v1/embeddings前面的路径)
# model模型名称:对应curl中"model"的值,如本示例的 bge-m3:latest

# 二、CoMi数据库初始化

在部署组件服务前需要先准备一个关系型数据库,用于存储CoMi的数据,关系型数据库可以复用协同的数据库服务(针对AI新建一个表空间/数据库)。CoMi支持的数据库版本要求:

  • mysql5.7、mysql8.0
  • 达梦8.4
  • 人大金仓(电科金仓)V8R6(Oracle兼容模式)
  • postgreSQL 13.3
  • sqlServer 2019
  • oracle 19c(其它Oracle版本不支持)

确保关系型数据库部署完成后,连接到数据库服务进行数据库新建和SQL初始化:

1、创建名为ai_manager的数据库,以下提供不同数据库的建库语句:

-- mysql建库语句
create database ai_manager default character set utf8mb4;

-- SQLServer数据库:
CREATE DATABASE ai_manager;

-- Oracle数据库:
-- 执行时发现错误可以先执行如下sql
ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE;
-- 创建用户 ai_manager并设置密码
create user AI_MANAGER identified by 访问密码;
-- 赋权
grant connect,resource to AI_MANAGER;
-- 赋权
GRANT UNLIMITED TABLESPACE TO AI_MANAGER;

-- PostgreSQL数据库:
CREATE DATABASE ai_manager TABLESPACE 表空间名称 ENCODING 'UTF8';

-- 达梦数据库:创建 Schema 并关联用户 
CREATE SCHEMA ai_manager AUTHORIZATION 数据库用户;

-- 人大金仓数据库:
CREATE DATABASE ai_manager TABLESPACE 表空间名称 ENCODING 'UTF8';
-- 注意:人大金仓建库后需要先查询看下是否支持空字符串插入,sql语句如下:
select name,setting from  sys_settings where name = 'ora_input_emptystr_isnull' ;
-- 若结果显示为on,需要修改kingbase.conf中的ora_input_emptystr_isnull=off

2、向ai_manager数据库导入CoMi初始化脚本:

数据库脚本位于ComiBuilder-Manager部署包中,A6版本与其它版本初始化脚本不同,根据实际情况选择正确的初始化脚本:

1753503168116.png

初始化SQL脚本按不同数据库进行了分类,根据项目实际情况选择对应数据库的初始化脚本。

确定产品线、数据库,找到正确的数据库初始化SQL后,将SQL导入上一步创建的ai_manager数据库中,确保数据库下有对应初始化表。

# 三、qdrant向量库部署

qdrant是开源的向量数据库,用于存储高维向量数据供AI使用。本章节提供两种部署方案,二选一。

官方文档:https://qdrant.tech/documentation/quickstart/

# 方案一:qdrant二进制部署(x86架构)

从提供的部署包下载地址中获取qdrant离线包(qdrant-1.13.6.zip)和配置文件,上传到服务器并解压(注意选择与系统架构一致的包)

# 创建目录
mkdir /data
# 将Qdrant压缩包解压
unzip qdrant-1.13.6.zip -d /data/

启动qdrant:

# 进入qdrant目录
cd /data/qdrant-1.13.6
# 添加执行权限
chmod +x /data/qdrant-1.13.6/qdrant
# 执行启动命令
nohup ./qdrant --config-path=./config.yaml >> qdrant.log 2>&1 &

qdrant默认占用端口6333、6334,通过如下命令测试有输出结果则说明启动成功,注意通过防火墙开通端口访问权限:

netstat -ntlp | grep 6333
netstat -ntlp | grep 6334

同事,还可以在服务器上,通过 curl http://qdrant服务IP地址:6333 命令,检查如果有结果返回也说明启动成功。

# 方案二:qdrant docker部署(ARM架构)

如果是ARM架构,需要在Docker下部署qdrant。

1、部署qdrant前,需要自行在操作系统下部署docker,参考手册《安装部署Docker(二进制包方式) (opens new window)》。

2、从提供的部署包下载地址中获取arm架构的qdrant镜像(qdrant_v1.13.6.tar.gz)

# 加载qdrant镜像
docker load -i qdrant_v1.13.6.tar.gz

# 创建qdrant目录
mkdir /data/qdrant-1.13.6

# 运行服务
docker run --restart=unless-stopped --name qdrant \
    -p 6333:6333 -p 6334:6334 \
    -v "/data/qdrant-1.13.6/qdrant_storage:/qdrant/storage:z" \
    qdrant:v1.13.6

# 检查镜像运行情况,确保状态为up
docker ps -a

# 四、Nginx服务代理配置

Comi依赖Nginx反向代理,需要确保Comi和协同OA使用相同Nginx进行代理管理,这里请提前完成Nginx的部署配置。

# Nginx安装

如客户环境没有Nginx,则参考《Nginx源码编译安装手册 (opens new window)》进行编译安装。

# Nginx代理协同和CoMi

1、Nginx部署后,首先参考《协同OA反向代理和负载均衡 (opens new window)》进行协同的代理配置,确保通过NG能访问协同系统之后,再进行CoMi的代理配置。

2、通过vim nginx.conf增加comi相关配置,仅需增加两块内容:

  • 增加upstream统一管理AI-Manager地址
  • 在协同OA的server块中增加include comi.conf;配置,让comi代理配置全部由comi.conf文件维护
# comi start到comi end是增加的comi配置

# comi start:增加AI-Manager的upstream配置
upstream ai_manager{
    # 这里IP端口指向AI-manager地址
    server 192.168.0.171:8181;
}
# comi end:增加AI-Manager的upstream配置

# 代理协同OA
server {
    listen 80;
    server_name  localhost;
    charset utf-8;

    # comi start:关联comi配置文件
    include comi.conf;
    # comi end:关联comi配置文件

    location / {
        proxy_pass http://seeyon_v5_cluster;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_redirect http:// $scheme://;
        proxy_connect_timeout 300;
        proxy_read_timeout 300;
        proxy_send_timeout 300;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

upstream seeyon_v5_cluster{
    sticky;
    server 192.168.0.170:8080 max_fails=300 fail_timeout=30s;
}

3、在nginx.conf同级目录下新建comi.conf(vim comi.conf命令),将如下配置完整保存到comi.conf(不用特殊调整任何参数):

location ~ /\.(git|env|svn|htaccess|bak|old|swp)$ {
    deny all;
}
location /ai-static {
    proxy_set_header X-Real-Ip $remote_addr;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://ai_manager;
    proxy_buffering off;
}
location ^~ /seeyon/ai-platform/ai-manager/agent/info/call/sse {
    proxy_http_version 1.1;
    proxy_set_header Connection "";
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    # SSE 连接时的超时时间
    proxy_read_timeout 86400s;
    # 取消缓冲
    proxy_buffering off;
    # 关闭代理缓存
    proxy_cache off;
    rewrite ^/seeyon/ai-platform(.*)$ $1 break;
    proxy_pass http://ai_manager;
}
location ^~ /seeyon/ai-platform/backend {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Proto $scheme;
    rewrite ^/seeyon/ai-platform(.*)$ $1 break;
    proxy_pass http://ai_manager;
    set $nocache 1;
    proxy_cache_bypass $nocache $cookie_nocache $arg_nocache $arg_comment;
}
location ^~/seeyon/ai-platform/frontend {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Proto $scheme;
    rewrite ^/seeyon/ai-platform(.*)$ $1 break;
    proxy_pass http://ai_manager;
    set $nocache 1;
    proxy_cache_bypass $nocache $cookie_nocache $arg_nocache $arg_comment;
}
location ~ /seeyon/ai-platform {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    rewrite ^/seeyon/ai-platform(.*)$ $1 break;
    proxy_pass http://ai_manager;
}
location /ai-manager {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_pass http://ai_manager;
}
location = /seeyon/ai-platform/ai-manager/assistant/info/call/stream {
    proxy_http_version 1.1;
    proxy_set_header Connection "";
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    # SSE 连接时的超时时间
    proxy_read_timeout 86400s;
    # 取消缓冲
    proxy_buffering off;
    # 关闭代理缓存
    proxy_cache off;
    # 禁用分块传输编码
    chunked_transfer_encoding off;
    gzip off;
    rewrite ^/seeyon/ai-platform(.*)$ $1 break;
    proxy_pass http://ai_manager;
}

4、检查配置并重新加载Nginx配置

# 检查配置是否正确(示例代码见截图)
./nginx -p nginx目录 -c nginx.conf配置文件路径 -t

# 重新加载配置,使配置生效(示例代码见截图)
./nginx -p nginx目录 -c nginx.conf配置文件路径 -s reload

1747843408678.png

# 五、协同配置CoMi并启动

完成Nginx相关配置后,确保协同OA处于启动状态,然后通过浏览器访问Nginx代理地址检查能否访问协同登录页面。

注意:协同加密狗需要提前注册更新CoMi所需插件授权,所需插件详见 依赖商务授权 章节。

1747892980933.png

启动协同服务之前,先修改协同OA部署目录下的 base/conf/plugin.properties 文件。修改配置后,需要重启协同OA才能生效!

# http://192.168.188.143是Nginx代理的地址,请按照实际情况修改
ai.comibuilderServer=http://192.168.188.143/seeyon/ai-platform/ai-manager/assistant/info/getAllRightsAssistant

# http://192.168.188.147:8181是AI-Manager的服务器IP和端口,请按照实际情况修改
ai.managerUrl = http://192.168.188.147:8181/ai-manager

# ApiKey获取方式:后续章节配置即可,协同系统管理员登录到后台,访问CoMi Builder菜单-服务页签,创建API Key
ai.comi.apikey = oOIBGZVI0ZImdo6NqPR8v4tgwaUObP6SQdkBus2TMd8t7k4yHZ

也可以通过运行ApacheJetspeed/conf/SeeyonConfig.sh协同系统配置工具可视化修改。

如无相关配置,请检查是否存在CoMi授权插件,以及当前协同的BuildID在CoMi支持范围内。

# 六、Comi核心服务部署

请__按顺序依次部署__ComiBuilder相关服务:AI-Manager、AI-Engine、AI-Security

# 部署AI-Manager

AI-Manager负责各项功能资源的配置以及工具和大模型的调用。

AI-Manager依赖JDK版本>=17,已内置x86 JDK,特殊芯片服务器需手动替换

1、创建安装目录

# 创建安装包存放路径
mkdir /data/Seeyon/Comi/seeyon_packages/ai-manager -p
# 创建AI-Manager最终程序目录
mkdir /data/Seeyon/Comi/app/ai-manager -p

2、将AI-Manager(与产品线相匹配的)安装包上传到/data/Seeyon/Comi/seeyon_packages/ai-manager 目录:

注意:

  • ai-manager-linux.zip 对应企业线X86的Linux包
  • ai-manager-linux-gov.zip 对应政务线X86的Linux包(仅预制模板不同)
  • ai-manager-linux-arm.zip 无论企业还是政务,ARM都用这个包

1753696867239.png

以下以“ai-manager-linux.zip”为例!

# 可以用mv命令,也可以自行直接上传到目标目录
mv ai-manager-linux.zip /data/Seeyon/Comi/seeyon_packages/ai-manager

3、将部署包 ai-manager-linux.zip 解压至 /data/Seeyon/Comi/app/ai-manager/

unzip /data/Seeyon/Comi/seeyon_packages/ai-manager/ai-manager-linux.zip -d /data/Seeyon/Comi/app/ai-manager/

解压后/data/Seeyon/Comi/app/ai-manager下多了一层目录ai-manager-linux,需要将ai-manager-linux下的所有文件剪切到app/ai-manager目录下:

# 将 ai-manager-linux 下的所有文件和目录剪切到上级目录
mv /data/Seeyon/Comi/app/ai-manager/ai-manager-linux/* /data/Seeyon/Comi/app/ai-manager/

# 删除空的 ai-manager-linux 目录
rmdir /data/Seeyon/Comi/app/ai-manager/ai-manager-linux

4、修改配置文件

# 到AI-Manager目录下修改配置文件
cd /data/Seeyon/Comi/app/ai-manager
vim application.yaml
server:
  # (可选修改)监听端口,默认为:8181
  port: 8181
  tomcat:
    connection-timeout: 600000
spring:
  servlet:
    multipart:
      enabled: true #是否启用http上传处理
      max-file-size: 100MB #设置单个文件最大长度
      max-request-size: 500MB #最大请求文件的大小
  mvc:
    static-path-pattern: /ai-static/**
  web:
    resources:
      # (需修改)静态资源路径,必须指定到ai-manager程序运行目录下,如按手册部署必须将默认值app/ai_manager改成app/ai-manager
      static-locations: file:/data/Seeyon/Comi/app/ai-manager/frontend,file:/data/Seeyon/Comi/app/ai-manager/static/

logging:
  level:
    root: info

seeyon:
  application:
    name: ai-manager
  ai:
    # (需修改)数据源配置,对应前面CoMi数据库初始化章节的数据库,不同数据库配置不同,参考下方【数据源类型配置参考】说明设置
    datasource:
      url: jdbc:mysql://192.168.0.92:3342/ai_manager
      username: root
      password: Seeyon123

    # agent引擎服务配置
    websocket:
      # (需修改)ai-engine 服务管理通道,修改其中的ip和端口
      manageUrl: ws://192.168.0.171:8000/agent/services
      # (需修改)ai-engine 服务消息通道,修改其中的ip和端口
      messageUrl: ws://192.168.0.171:8000/agent/msg
      # (需修改)ai-security 敏感词消息通道,修改其中的ip和端口
      sensitiveUrl: ws://192.168.0.171:9000/sensitive/services
      token: ai-engine
     # 向量数据库配置,修改为实际部署的qdrant地址和端口
    vector-store:
      engine: qdrant
      # (需修改)Qdrant服务IP地址
      host: 192.168.0.171
      port: 6334
    common:
      # (需修改)文件临时存储的路径,如按手册部署必须将默认值app/ai_manager改成app/ai-manager
      filePath: /data/Seeyon/Comi/app/ai-manager/temp
      # (需修改)修改为ai_manager服务器的IP(ai_manager端口默认8181)
      baseUrl: http://192.168.0.171:8181/ai-manager
      # (需修改)集成v5时,注意修改为Nginx代理后的v5的访问地址和端口
      v5Address: http://192.168.0.171:80
      # (需修改)集成v8时,修改为v8的访问地址和端口,v5客户请忽略
      v8Address: http://127.0.0.1:81
      encryRequired: false
      commonFileSuffixes: txt,md,markdown,rtf,zip,rar,7z,tar,gz,jpg,jpeg,png,gif,bmp,tiff,tif,webp,doc,docx,xls,xlsx,pdf,rep,csv,json
      # OcrUrl配置当前无需修改,保持默认配置
      oaOcrUrl: http://172.31.15.186:12841/ocr/pic/get_all_text
      v8OcrUrl: http://192.168.80.41:8666/udc/recognize

knowledge-source-chunk-max-size: 10

数据源类型配置参考:

    # 达梦数据库示例配置:
    datasource:
      url: jdbc:dm://127.0.0.1:5237/ai_manager
      username: db_user
      password: db_password

    # 人大金仓数据库示例配置:
    datasource:
      url: jdbc:kingbase8://127.0.0.1:54323/ai_manager
      username: db_user
      password: db_password

    # postGreSql数据库示例配置:
    datasource:
      url: jdbc:postgresql://127.0.0.1:5432/ai_manager
      username: db_user
      password: db_password

    # sqlServer数据库示例配置:
    datasource:
      url: jdbc:sqlserver://127.0.0.1:1433;database=ai_manager
      username: sa
      password: Seeyon@123456

    # oracle 数据库示例配置:
    datasource:
      url: jdbc:oracle:thin:@127.0.0.1:1521/SEEYONDB
      username: AI_MANAGER
      password: Seeyon123456

5、启动服务: 部署完成后启动服务:

cd /data/Seeyon/Comi/app/ai-manager
# 添加执行权限
chmod +x jdk/bin/*
chmod +x *.sh

# 启动服务
bash startup.sh

# 查看控制台日志,如有明显异常,需要主动分析原因
tail -f nohup.out

# 检查服务是否启动一:查看ai-manger的java进程是否存在
ps -ef | grep java

# 检查服务是否启动二:检查端口是否拉起(默认端口8181)
netstat -ntlp | grep 8181

# 停止服务(如需重启,就先停止再启动)
bash shutdown.sh

6、启动服务需要一定时间,大约1分钟之后,通过 http://Manager服务器地址:8181 测试服务是否能访问,如无法访问,则需要通过日志分析原因。

注意:AI-Manager服务的端口(默认8181)需要防火墙放开访问权限。

sudo firewall-cmd --permanent --add-port=8181/tcp
sudo firewall-cmd --reload

7、检查AI-Manager服务是否运行正常:

登录协同OA系统管理员后台,访问CoMi Builer菜单,如能显示内容,则说明部署配置正常:

1753437447203.png

如访问CoMi Builer菜单页面无法正常显示,则重点排查:

  • Nginx是否已经按要求配置
  • ai-manager/application.yaml下的[static-locations]前端资源路径是否正确设置在ai-manager程序路径下
  • ai-manger的日志是否启动失败

# 获取ComiBuilder API Key

登录协同OA系统管理员后台,访问CoMi Builer菜单-服务页签,点击创建API Key:

1747845754552.png

为AI-Engine服务创建一个API Key:

1753281826108.png

复制创建的api key,后续章节需要使用:

1753281911848.png

# 后台新增模型

登录协同OA系统管理员后台,访问CoMi Builer菜单-模型页签,点击 接入模型维护

1753282114789.png

点击 "+" ,新建分类(分类名称可自定义)

1747847107311.png

再点击 "新增",新增模型,根据模型类型,选择LLM或者Embedding模型:

  • 模型名称:必须是真实准确的名称,对应大模型curl测试中的model参数
  • 必须至少新建一个LLM模型和一个Embedding模型,用于后面的数据初始化

1753449331828.png

再次点击模型栏,返回上一级,点击新增,填写模型完整信息,LLM和Embedding需要分别新增一个:

  • 模型标识:唯一,可自定义,常用模型建议尽量与model一致,方便管理
  • 模型描述:非必填
  • 模型类型:LLM对应 语言模型;Embedding对应向量模型;ReRank对应重排模型
  • 接入模型:对应“接入模型维护”按钮中配置的信息
  • Base URL:对应模型的openAI请求地址,参考【大模型准备和调试】章节说明获取
  • API Key:公有云模型涉及此参数,私有模型可能没有,参考【大模型准备和调试】章节说明获取

LLM语言模型配置示例:

1753450577514.png

Embedding模型配置示例:

1753449194746.png

保存后,通过“测试”确保大模型的连接状态为“通过”,并且尽量使用支持Functioncalling的LLM大语言模型:

如大语言模型不支持FunctionCalling会导致所有涉及调用协同OA工具的Agent无法使用

1753449006891.png

# 后台设置默认模型

模型页签,点击“设置默认模型”按钮,选择默认运行的模型:

  • LLM大语言模型,必须
  • ReRank模型,非必须
  • Embedding模型,必须,选择质量较好的Embedding文本向量模型,默认Embedding模型一旦配置不允许修改!

为什么Embedding文本向量模型一旦配置不允许修改?因为不同文本向量模型算法不一,如混合使用会导致向量数据库错乱,无法给出高质量的数据

1753282919246.png

# 部署AI-Engine

AI-Engine负责agent调度,编排。

1、创建AI-Engine安装目录:

# 创建安装包存放路径
mkdir -p /data/Seeyon/Comi/seeyon_packages/ai-engine
# 创建AI-Engine最终运行目录
mkdir -p /data/Seeyon/Comi/app

2、将ComiBuilder-Engine目录下(与当前操作系统相匹配)的安装包上传到/data/Seeyon/Comi/seeyon_packages/ai-engine目录:

如当前操作系统无匹配的安装包,则默认取centos8尝试

# 可以用mv命令,也可以自行直接上传到目标目录
mv agent_packages.tar.gz miniconda.tar seeyonagents.tar.gz /data/Seeyon/Comi/seeyon_packages/ai-engine/

3、上传后,将seeyonagents.tar.gz解压到 /data/Seeyon/Comi/app

cd /data/Seeyon/Comi/seeyon_packages/ai-engine
tar -xzvf seeyonagents.tar.gz -C /data/Seeyon/Comi/app

4、执行环境配置脚本

cd /data/Seeyon/Comi/app/seeyonagents
bash service_env_install.sh -p /data/Seeyon/Comi/seeyon_packages/ai-engine -c /data/Seeyon/Comi/miniconda3

看到“Miniconda3和依赖包安装配置完成!”提示表示安装成功。

1753268480315.png

5、配置 .env_llm.yaml

cd /data/Seeyon/Comi/app/seeyonagents
# 重命名隐藏文件为env_llm.yaml
mv .env_llm.example.yaml .env_llm.yaml
# 修改配置文件,内容如下
vim .env_llm.yaml

对“需修改”选项进行配置调整:

# 所有第三方模型都需要接入Comi builder
# Comi builder 配置,没有注释“需修改”的都不要动
ai_manager:
  api_type: "openai"
  api_version: ""
  model: ""
  # (需修改) AI Manager服务地址,默认端口8181,以/v1后缀结束
  base_url: "http://192.168.0.171:8181/v1"
  # (需修改) 对应 “获取ComiBuilder API Key” 章节下的apikey,注意这个apikey不是大模型的apikey
  api_key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

# Embedding 向量模型配置
ai_embedding:
  api_type: "openai"
  api_version: ""
  model: ""
  # (需修改) AI Manager服务地址,默认端口8181,以/v1后缀结束
  base_url: "http://192.168.0.171:8181/v1"
  # (需修改) 对应 “获取ComiBuilder API Key” 章节下的apikey,注意这个apikey不是大模型的apikey
  api_key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  # (需修改) 对应ComiBuilder模型管理页面下向量模型的“模型标识”
  embedding_model: "text-embedding-v4"
  embedding_dimensions: 1024

1753518539514.png

1753518430081.png

6、配置.env

cd /data/Seeyon/Comi/app/seeyonagents
# 重命名隐藏文件为.env
mv .env.example .env
# 修改.env文件
vim .env

对“需修改”选项进行配置调整:

# (可选修改)配置运行端口,默认为8000
SEEYON_AGENTS_SERVER_PORT=8000
SEEYON_AGENTS_MAX_WORKERS=200
SEEYON_AGENTS_RESTORE_SESSION=True

# (需修改)日志路径替换为实际路径
SEEYON_AGENTS_LOGS_ROOT=/data/Seeyon/Comi/app/seeyonagents/logs
# (需修改)Temp_Data路径替换实际路径
SEEYON_AGENTS_TEMP_DATA_PATH=/data/Seeyon/Comi/app/seeyonagents/data
SEEYON_AGENTS_LOG=INFO

# 配置向量库
SEEYON_AGENTS_VECTORSTORE_TYPE=qdrant
# (需修改)这里配置qdrant向量库的http地址,默认端口6333
SEEYON_AGENTS_VECTORSTORE_URL=http://192.168.0.171:6333
SEEYON_AGENTS_VECTORSTORE_EMBEDDING_LLM=ai_embedding
SEEYON_AGENTS_LOGS_FILESIZE=20

# 开启多进程,默认不开启,高并发用户建议开启
# SEEYON_AGENTS_MAX_PROC_NUM=4

TIKTOKEN_CACHE_DIR=./tiktoken_cache

7、启动服务:部署配置完成后启动服务

cd /data/Seeyon/Comi/app/seeyonagents
# 添加执行权限
chmod +x *.sh
# 启动服务
bash start.sh

# 检查服务是否启动使用如下命令,其中8000为AI-Engine默认端口,对应.env中的端口配置
netstat -ntlp | grep 8000
# 如存在类似如下输出结果,则说明服务启动成功
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      7661/python

# 停止服务(如需重启,就先停止再启动)
bash stop.sh

注意:如CoMi采用多服务器分离部署,AI-Engine服务的端口(默认8000)需要防火墙放开访问权限。

# 部署AI-Security

AI-Security负责敏感词检测拦截功能。

1、创建安装目录

# 创建安装包存放路径
mkdir -p /data/Seeyon/Comi/seeyon_packages/ai-security
# 创建AI-Security最终程序父目录
mkdir -p /data/Seeyon/Comi/app

2、将ComiBuilder-Security目录下(与当前操作系统相匹配)的安装包上传到/data/Seeyon/Comi/seeyon_packages/ai-security 目录

如当前操作系统无匹配的安装包,则默认取centos8尝试

# 可以用mv命令,也可以自行直接上传到目标目录
mv ai-security-service.tar.gz miniconda.tar sensitive_packages.tar.gz /data/Seeyon/Comi/seeyon_packages/ai-security/

3、将ai-security-service.tar.gz解压到 /data/Seeyon/Comi/app

tar -xzvf /data/Seeyon/Comi/seeyon_packages/ai-security/ai-security-service.tar.gz -C /data/Seeyon/Comi/app

4、执行环境配置脚本

cd /data/Seeyon/Comi/app/ai-security-service
chmod +x *.sh
bash service_env_install.sh -p /data/Seeyon/Comi/seeyon_packages/ai-security -c /data/Seeyon/Comi/miniconda3

看到“Miniconda3和依赖包安装配置完成!”提示表示安装成功。

1753269616962.png

5、配置 .env

cd /data/Seeyon/Comi/app/ai-security-service
# 重命名.env配置
mv .env.example .env
# 修改.env文件
vim .env

.env配置内容如下:

# 服务运行IP,默认0.0.0.0,勿动
SERVER_HOST=0.0.0.0

# 服务运行端口,按需配置
SERVER_PORT=9000

# 日志目录,存放于ai-security运行程序下的logs子目录
LOG_PATH=/data/Seeyon/Comi/app/ai-security-service/logs

# 日志级别,可选:DEBUG, INFO, WARNING, ERROR
LOG_LEVEL=INFO

7、启动服务:部署完成后启动服务。

cd /data/Seeyon/Comi/app/ai-security-service
# 添加执行权限
chmod +x *.sh
# 启动服务
bash start.sh

# 检查服务是否启动使用如下命令,其中8000为AI-Engine默认端口,对应.env中的端口配置
netstat -ntlp | grep 9000
# 如存在类似如下输出结果,则说明服务启动成功
tcp        0      0 0.0.0.0:9000            0.0.0.0:*               LISTEN      2925/python3.10

# 停止服务(如需重启,就先停止再启动)
bash stop.sh

注意:如CoMi采用多服务器分离部署,AI-Security服务的端口(默认9000)需要防火墙放开访问权限。

# 复核AI-Manager配置

所有服务部署完成后,再次对ai-manager的 【修改application.yaml】 章节进行参数调整。

重点检查application.yaml中的manageUrl、messageUrl、sensitiveUrl地址是否正确。调整后,需要重启Manager服务。

    # agent引擎服务配置
    websocket:
      # (需修改)ai-engine 服务管理通道,修改其中的ip和端口
      manageUrl: ws://192.168.0.171:8000/agent/services
      # (需修改)ai-engine 服务消息通道,修改其中的ip和端口
      messageUrl: ws://192.168.0.171:8000/agent/msg
      # (需修改)ai-security 敏感词消息通道,修改其中的ip和端口
      sensitiveUrl: ws://192.168.0.171:9000/sensitive/services

# 七、初始化CoMi应用

# 数据初始化

登录协同OA系统管理员后台,访问CoMi Builder菜单-系统管理页签。

1、选择“数据初始化”:

1753266220646.png

请依次初始化:应用、Agent、工具

1753352362976.png

如数据初始化页面的应用列表显示为空,可能原因:

  • 检查ai_manager/application.yaml配置文件中,“文件存储路径配置”参数是否未将/data/Seeyon/Comi/app/ai-manager/temp设置成文件临时存储路径。
  • 数据库不兼容导致初始化应用数据写入异常,需要检查ai-manager/nohup.out日志判断是否存在数据写入异常,如存在则做对应处置。

2、初始化数据配置自动回填:

  • 模型标识:对应模型页签中配置的LLM大模型
  • 协同baseUrl:对应协同的Nginx代理地址(地址不含/seeyon),详见示例截图
  • 向量模型标识:对应模型页签中配置的Embedding模型

3、应用列表默认只显示5条,需要通过翻页组件切换为100条,再全选所有应用列表,最后点击确定,将所有智能体应用初始化:

1753283374602.png

4、观察所有应用的初始化进度,如出现异常,需要根据日志(Comi/app/ai-manager/nohup.out)分析解决异常,再重新初始化:

1747884105948.png

# 失败重试智能体应用

如初始化“失败”,在修复问题后还需要重新初始化应用,CoMi V1.1版本已支持重新初始化功能,请检查修复失败项并再次点击初始化。

# 智能体应用授权

协同集团版用集团管理员登录后台管理页面,协同企业版用单位管理员登录后台管理页面。

进入【智能应用设置】点击【Comi应用授权】:

  • 集团管理员“授权单位”,只是授权给单位管理员,再由该单位的单位管理员针对单位下人员进行授权
  • “授权用户”则是直接给指定普通用户授权智能体应用使用权限,普通用户重新登录系统就能看到相关智能体应用
  • 注意:可授权人员数量受购买插件时注册用户数量控制。比如申请了100注册数,则每个智能体应用只能授权100位用户。

1747896798369.png

# 用户使用CoMi

被授权普通用户登录系统,通过右侧CoMi图标进入智能应用页面:

1747896872837.png

智能体页签仅显示用户被授权的智能体应用:

1747896979392.png

# 详细使用见操作手册

更详细的操作、配置、说明见CoMi用户操作手册。

# 组件日常维护

# qdrant向量库启停和维护

qdrant启停:

cd /data/qdrant-1.13.6
# 启动方法1
nohup ./qdrant >> qdrant.log 2>&1 &

# 启动方法2: 如果没有创建config目录单独存放config.yaml,那么启动时需手动指定配置文件
# 将配置文件config.yaml上传到 /data/qdrant 目录下
nohup ./qdrant --config_path=config.yaml >> qdrant.log 2>&1 &

检查qdrant服务状态: 通过http访问qdrant服务6333端口,看到输出则表示服务处于启动状态

1747898599035.png

qdrant日志: 存放于/data/qdrant/qdrant.log

1747898121356.png

qdrant配置: 配置存放于 /data/qdrant-1.13.6/config.yaml,如需要修改监听端口,可调整此配置,注意调整后还需要修改ComiBuilder对应服务的qdrant配置。

# AI-Engine启停和维护

AI-Engine启停:

cd /data/Seeyon/Comi/app/seeyonagents

# 添加执行权限
chmod +x *.sh

# 启动服务
bash start.sh

# 停止服务
bash stop.sh

AI-Engine日志: 存放于app/seeyonagents/logs下,按日期分布:

1747898810093.png

AI-Engine配置: engine的配置参考【修改.env_llm.yaml和.env配置】章节进行参数调整。调整后,需要重启Engine服务。

# AI-Security启停和维护

AI-Security启停:

cd /data/Seeyon/Comi/app/ai-security-service

# 添加执行权限
chmod +x *.sh

# 启动服务
bash start.sh

# 停止服务
bash stop.sh

AI-Security日志: 存放于app/ai-security-service/logs下:

1747899992699.png

AI-Security配置: Security的配置参考【修改.env配置】章节进行参数调整。调整后,需要重启Security服务。

# AI-Manager启停和维护

AI-Manager启停:

cd /data/Seeyon/Comi/app/ai-manager

# 添加执行权限
chmod +x jdk/bin/*
chmod +x *.sh

# 启动服务
bash startup.sh

# 停止服务
bash shutdown.sh

# 查看控制台日志
tail -f nohup.out

AI-Manager日志: AI-Manger实时运行日志存放于app/ai-manager下的nohup.out里:

1747901047732.png

AI-Manger历史运行日志存放于app/ai-manager/logs里:

1748185607791.png

AI-Manager配置: Manager的配置参考【修改application.yaml】章节进行参数调整。调整后,需要重启Manager服务。

# 常见问题

# 1、无Comi插件,或插件未分配注册数

解决方案:CoMi按注册数授权,在进行用户授权时会检测当前加密狗是否有注册数,开发狗、0注册数的加密狗用户无法授权。需要从商务申请带CoMi注册数的加密授权。

1747901583816.png

# 2、协同系统管理员访问CoMi Builder页面未正确显示,提示Not Found

解决方案:CoMi Builder访问的是CoMi服务的页面,满足如条件即可正常访问:

  • 1)确保部署了CoMi相关服务
  • 2)必须参考【Nginx服务代理配置】章节,将CoMi相关请求配置到NG
  • 3)访问协同系统必须通过Nginx代理到协同OA的地址
  • 4)nginx.conf中的 upstream ai_manager{} 代理地址对应的是AI-Manager服务器IP和端口
    1. 参考“4、协同进入Comi Builder页面,直接提示Error Page 404错误”检查AI-Manager的static-location

1747902222309.png

1747902238127.png

# 3、协同进入Comi Builder页面,直接提示Error Page 500错误

解决方案,目前已知两种情况会出现此问题:

  • 1、AI-Manager服务未启动成功,通过【AI-Manager启停和维护】章节,检查服务的nohup.out日志,分析服务状态。
  • 2、AI-Manager服务异常导致,比如ai-manager下的application.yaml配置v5Address地址错误,该地址需要指向Nginx代理OA的地址,并且ai-manager服务器能访问到该地址

1748251714475.png

1749200703580.png

# 4、协同进入Comi Builder页面,直接提示Error Page 404错误

配置问题,ai-manager的静态文件路径配置错误!参考【修改application.yaml】章节,检查static-locations参数,此路径一定要在AI-Manager的程序运行路径下。 加入AI-Manager的程序路径在 /data/Seeyon/Comi/app/ai-manager,则static-locations参数中的 ai_manager 需要改成 ai-manager

1753520348924.png

1753520385740.png

# 5、AI-Manager连接人大金仓(电科金仓)数据库启动报错

启动ai_manager,查看日志发现大量 ERROR: null value in column "create_user_name" violates not-null constraint 字样的错误。这个问题原因是金仓数据库不支持空字符串插入导致的异常,需要联系金仓数据库厂商配置数据库参数关闭。

-- 注意:人大金仓建库后需要先查询看下是否支持空字符串插入,sql语句如下:
select name,setting from  sys_settings where name = 'ora_input_emptystr_isnull' ;
-- 若结果显示为on,需要修改kingbase.conf中的ora_input_emptystr_isnull=off

1748328645587.png

1748328915808.png

# 6、初始化CoMi应用时,文案策略、安全助理等智能体应用部署失败

文案策略、安全助理等智能体应用初始化失败,尝试重新初始化也不行。通常问题原因和解决方案如下:

1、确保参考【初始化CoMi应用】章节,一步一步操作,不能遗漏

2、确保模型页签下测试LLM和Embedding模型状态OK,未测试模型会导致初始化失败

3、这几个应用会先调用Embedding模型进行向量化,再写入qdrant向量数据库,如Embedding和qdrant服务不正常会导致初始化失败

4、初始化超时时间5分钟,如服务器性能太差,未在设定时间内初始完成会导致失败。

5、如Embedding模型采用本地,检查文本向量模型服务器负载,CPU长期100%易导致初始化失败,考虑提升服务器配置。

1748342134712.png

1748341897864.png

# 7、curl模型能通,telnet不通,管理员后台测试模型提示HTTP connect timed out

已确认在ai_manager服务器进行curl命令能连通大模型

但是按规则配置后测试模型提示:I/O error on POST request for "http://xxxx/v1/chat/completions":HTTP connect timed out

在ai_manager服务器通过telnet 模型IP 模型端口同样不通。

问题原因:最终确认问题原因是comi那台服务器没有开通访问大模型IP端口的网络权限,curl能连通是因为走到了代理。

解决方案:需要客户明确开网络策略,能让comi服务器访问到大模型真实服务器。

如何判断模型能通:第一需要curl测试通,第二需要telnet通,确保这两条命令都OK才行!

1749545275580.png

1749545302217.png

# 8、进入Comi应用授权页面提示:获取应用列表失败

登录OA集团管理员后台,进入智能应用设置——Comi应用授权页面,报错:获取应用列表失败

1753668553113.png

检查ctp日志,有对应报错

1753668741365.png

可以看到是oa调用comi(ng代理的地址)超时了,检查oa访问ng网络不通,待访问畅通之后,问题解决

# 9、进入CoMi应用授权页面提示:访问comi应用列表失败

登录OA集团管理员后台,进入智能应用设置——Comi应用授权页面,报错:访问comi应用列表失败:请检查ng配置的url或者网络连接是否正常

解决方案:检查协同OA的base/conf/plugin.properties配置,配置一定要按照要求调整(详见“协同配置CoMi并启动”章节):

  • 配置中的 ai.comibuilderServer 设置为Nginx访问协同OA的地址
  • 配置中的 ai.managerUrl 则是对应AI-Manager的服务IP和端口,不是走NG
  • 配置中的 ai.comi.apikey 则是对应系统管理员CoMiBuilder服务下面配置的apikey

以上配置无误后,重启下协同OA生效。

1753776980512.png

编撰人:wangyxyf、het

快速跳转