Compare commits

...

3 Commits

Author SHA1 Message Date
Lenticular Studio Agent
8a9f22babe feat:解决冲突,加入中转站到生产环境 2026-06-24 00:33:11 +08:00
Lenticular Studio Agent
69d08abaee Merge branch 'feat/asset_material_relations' of https://git.liantu.tech/xiaoyu/topfans into feat/laser-grating-card-optimization 2026-06-24 00:09:30 +08:00
zerosaturation
0e8de0cbb1 feat:修改版本号 2026-06-23 23:43:11 +08:00
6 changed files with 27 additions and 9 deletions

View File

@ -36,7 +36,7 @@ REDIS_DB=0
# minimax (默认) - 后端直连 MiniMax
# dify - 调 Dify laser_card_variants_v1 工作流 (阻塞)
# openai - 后端直连 OpenAI /v1/images/edits (阻塞, 5 路并发 + 直接落 OSS)
LASER_GEN_PROVIDER=minimax
# LASER_GEN_PROVIDER=minimax
# ==================== OpenAI Images API (LASER_GEN_PROVIDER=openai 时使用) ====================
# 生产环境必须设置,否则 LASER_GEN_PROVIDER=openai 启动会直接报错
@ -46,15 +46,15 @@ OPENAI_MODEL=gpt-image-1.5
# ==================== Dify Workflow (laser_card_v1) ====================
# Dify API 入口 (laser_card_variants_v1 工作流, 仅在 LASER_GEN_PROVIDER=dify 时使用)
DIFY_API_BASE=http://localhost/v1
DIFY_API_KEY=app-tIfFhFwj3xnbRurK1oxxBXnA
# DIFY_API_BASE=http://localhost/v1
# DIFY_API_KEY=app-tIfFhFwj3xnbRurK1oxxBXnA
# ==================== Laser Card ====================
# 镭射卡 6 层合成服务gateway 通过容器名 + 端口访问)
LASER_COMPOSITOR_URL=http://lasercompositor:7002
COMPOSITOR_PORT=7002
# 抠图服务:imageseg=阿里云 SegmentHDBody / ivpd=IVPD SegmentImage / auto=自部署HTTP→imageseg→IVPD
SEGMENT_PROVIDER=imageseg
# LASER_COMPOSITOR_URL=http://lasercompositor:7002
# COMPOSITOR_PORT=7002
# # 抠图服务:imageseg=阿里云 SegmentHDBody / ivpd=IVPD SegmentImage / auto=自部署HTTP→imageseg→IVPD
# SEGMENT_PROVIDER=imageseg
# ==================== SMS Configuration ====================
SMS_ACCESS_KEY_ID=LTAI5t6QcdJHpYbCPxM8SXYE
@ -62,3 +62,15 @@ SMS_ACCESS_KEY_SECRET=ybvjSEb7wilMt3qT5nOppYPoNVayCD
SMS_SIGN_NAME=上海顶粉数字科技
SMS_TEMPLATE_CODE=SMS_314621237
SMS_REGION=cn-hangzhou
# ==================== 中转站 ====================
DB_PASSWORD=admin
DB_NAME=top-fans
JWT_SECRET=topfans-secret-key-please-change-in-production
LASER_GEN_PROVIDER=openai
OPENAI_API_KEY=sk-b1f01c1ebc177e8fbd8e19ca3edeb542b521c39039977ef2974ce06c5d4cc18d
OPENAI_BASE_URL=https://xbcl.link/v1
OPENAI_MODEL=gpt-image-2
DIFY_API_BASE=http://172.23.0.1/v1
DIFY_API_KEY=app-Ibs7reARanyuYGZ7zrLyiM6e

View File

@ -482,6 +482,8 @@ services:
condition: service_healthy
moderationservice:
condition: service_healthy
lasercompositor:
condition: service_healthy
networks:
topfans-net:
aliases:

View File

@ -587,6 +587,8 @@ services:
DUBBO_STARBOOK_SERVICE_URL: tri://starbookservice:20005
DUBBO_AI_CHAT_SERVICE_URL: tri://aichatservice:20008
DUBBO_STATISTIC_SERVICE_URL: tri://statisticservice:20009
DUBBO_NOTIFICATION_SERVICE_URL: tri://notificationservice:20010
DUBBO_MODERATION_SERVICE_URL: tri://moderationservice:20011
LASER_COMPOSITOR_URL: http://lasercompositor:7002
# 抠图人像扣底、OSS、Dify、JWT、Redis 全部走 env_file: .env.prod
REDIS_HOST: topfans-redis
@ -615,7 +617,6 @@ services:
condition: service_started
moderationservice:
condition: service_started
condition: service_started
redis:
condition: service_healthy
networks:

View File

@ -225,3 +225,5 @@
}
}
}
/* SDK */

View File

@ -138,7 +138,7 @@ export function request(options) {
}
},
fail: (err) => {
reject(err)
reject(new Error(err.errMsg || '网络请求失败'))
}
})
})

View File

@ -122,6 +122,7 @@ class SocketManager {
url,
fail: (err) => {
console.error(`[${this.serviceName}] connectSocket fail:`, err)
this._isConnecting = false
this._emit('error', { code: 'CONNECT_FAILED', message: err.errMsg || '连接失败' })
}
})