77f9998393
CI / docker (push) Successful in 3m13s
引入用户端对话/生图与管理端 Provider 配置,统一 invoke 编排、Gateway、请求日志与模型管理;前端按设计规范拆分布局,Go module 更名为 github.com/rose_cat707/Atlas;生图长任务 SSE 推送;管理端登录防爆破;协议与服务类型联动;Replicate 模型同步修复;用户端创作台 UI 重构;管理端创作历史替代请求日志。 Co-authored-by: Cursor <cursoragent@cursor.com>
42 lines
1.2 KiB
Go
42 lines
1.2 KiB
Go
package service
|
|
|
|
import (
|
|
"github.com/rose_cat707/Atlas/internal/provider"
|
|
"github.com/rose_cat707/Atlas/internal/service/asset"
|
|
"github.com/rose_cat707/Atlas/internal/service/chat"
|
|
"github.com/rose_cat707/Atlas/internal/service/invoke"
|
|
"github.com/rose_cat707/Atlas/internal/service/reqlog"
|
|
"github.com/rose_cat707/Atlas/internal/service/taskevents"
|
|
"github.com/rose_cat707/Atlas/internal/store"
|
|
)
|
|
|
|
type App struct {
|
|
Store *store.Store
|
|
DataDir string
|
|
Router *provider.Router
|
|
Models *provider.ModelsService
|
|
TaskEvents *taskevents.Hub
|
|
Invoke *invoke.Service
|
|
Chat *chat.Service
|
|
Assets *asset.Signer
|
|
ReqLog *reqlog.Logger
|
|
}
|
|
|
|
func NewApp(st *store.Store, dataDir string, signSecret string) *App {
|
|
logger := reqlog.New(st)
|
|
router := provider.NewRouter(st, logger)
|
|
models := provider.NewModelsService(st, router)
|
|
taskEvents := taskevents.NewHub()
|
|
return &App{
|
|
Store: st,
|
|
DataDir: dataDir,
|
|
Router: router,
|
|
Models: models,
|
|
TaskEvents: taskEvents,
|
|
Invoke: invoke.NewService(st, router, models, taskEvents),
|
|
Chat: chat.NewService(st, router, models),
|
|
Assets: asset.NewSigner(signSecret),
|
|
ReqLog: logger,
|
|
}
|
|
}
|