Documentation
¶
Index ¶
- Variables
- func RegisterChatRoutes(ai *gin.RouterGroup)
- type Controller
- func (cc *Controller) AnyQuestion(c *gin.Context)
- func (cc *Controller) AnySelection(c *gin.Context)
- func (cc *Controller) Cron(c *gin.Context)
- func (cc *Controller) Describe(c *gin.Context)
- func (cc *Controller) Event(c *gin.Context)
- func (cc *Controller) Example(c *gin.Context)
- func (cc *Controller) FieldExample(c *gin.Context)
- func (cc *Controller) GPTShell(c *gin.Context)
- func (cc *Controller) History(c *gin.Context)
- func (cc *Controller) K8sGPTResource(c *gin.Context)
- func (cc *Controller) Log(c *gin.Context)
- func (cc *Controller) Reset(c *gin.Context)
- func (cc *Controller) Resource(c *gin.Context)
- type ResourceData
Constants ¶
This section is empty.
Variables ¶
var WebsocketMessageType = map[int]string{ websocket.BinaryMessage: "binary", websocket.TextMessage: "text", websocket.CloseMessage: "close", websocket.PingMessage: "ping", websocket.PongMessage: "pong", }
Functions ¶
func RegisterChatRoutes ¶ added in v0.0.145
func RegisterChatRoutes(ai *gin.RouterGroup)
Types ¶
type Controller ¶ added in v0.0.145
type Controller struct {
}
func (*Controller) AnyQuestion ¶ added in v0.0.145
func (cc *Controller) AnyQuestion(c *gin.Context)
@Summary 回答K8s相关问题 @Security BearerAuth @Param group query string false "资源组" @Param version query string false "资源版本" @Param kind query string false "资源类型" @Param question query string false "问题内容" @Success 200 {object} string @Router /ai/chat/any_question [get]
func (*Controller) AnySelection ¶ added in v0.0.145
func (cc *Controller) AnySelection(c *gin.Context)
@Summary 解释选择内容 @Security BearerAuth @Param question query string false "要解释的内容" @Success 200 {object} string @Router /ai/chat/any_selection [get]
func (*Controller) Cron ¶ added in v0.0.145
func (cc *Controller) Cron(c *gin.Context)
@Summary 分析Cron表达式 @Security BearerAuth @Param cron query string false "Cron表达式" @Success 200 {object} string @Router /ai/chat/cron [get]
func (*Controller) Describe ¶ added in v0.0.145
func (cc *Controller) Describe(c *gin.Context)
@Summary 分析K8s资源描述 @Security BearerAuth @Param group query string false "资源组" @Param version query string false "资源版本" @Param kind query string false "资源类型" @Param name query string false "资源名称" @Param namespace query string false "命名空间" @Success 200 {object} string @Router /ai/chat/describe [get]
func (*Controller) Event ¶ added in v0.0.145
func (cc *Controller) Event(c *gin.Context)
@Summary 分析K8s事件 @Security BearerAuth @Param note query string false "事件备注" @Param source query string false "事件来源" @Param reason query string false "事件原因" @Param type query string false "事件类型" @Param regardingKind query string false "相关资源类型" @Success 200 {object} string @Router /ai/chat/event [get]
func (*Controller) Example ¶ added in v0.0.145
func (cc *Controller) Example(c *gin.Context)
@Summary 获取K8s资源使用示例 @Security BearerAuth @Param group query string false "资源组" @Param version query string false "资源版本" @Param kind query string false "资源类型" @Success 200 {object} string @Router /ai/chat/example [get]
func (*Controller) FieldExample ¶ added in v0.0.145
func (cc *Controller) FieldExample(c *gin.Context)
@Summary 获取K8s资源字段示例 @Security BearerAuth @Param group query string false "资源组" @Param version query string false "资源版本" @Param kind query string false "资源类型" @Param field query string false "字段名称" @Success 200 {object} string @Router /ai/chat/example/field [get]
func (*Controller) GPTShell ¶ added in v0.0.145
func (cc *Controller) GPTShell(c *gin.Context)
@Summary 通过WebSocket提供GPT交互式对话终端 @Security BearerAuth @Param cluster query string false "集群名称" @Param namespace query string false "命名空间" @Param name query string false "资源名称" @Param resource query string false "资源类型" @Param content query string false "对话内容" @Success 101 {string} string "Switching Protocols" @Router /ai/chat/gptshell [get] GPTShell 通过 WebSocket 提供与 ChatGPT 及工具集成的交互式对话终端。
该函数升级 HTTP 连接为 WebSocket,维持心跳检测,实现双向消息流转: - 前端发送消息后,调用 ChatGPT 并动态集成可用工具,支持流式响应和工具调用结果返回; - 后端将 AI 回复和工具执行结果实时推送给前端; - 自动处理连接异常、心跳超时和资源释放。
若 AI 服务未启用或参数绑定失败,将返回相应错误信息。
func (*Controller) History ¶ added in v0.0.145
func (cc *Controller) History(c *gin.Context)
@Summary 获取聊天历史记录 @Security BearerAuth @Success 200 {object} string @Router /ai/chat/history [get]
func (*Controller) K8sGPTResource ¶ added in v0.0.145
func (cc *Controller) K8sGPTResource(c *gin.Context)
@Summary K8s错误信息分析 @Security BearerAuth @Param data query string false "错误内容" @Param name query string false "资源名称" @Param kind query string false "资源类型" @Param field query string false "相关字段" @Success 200 {object} string @Router /ai/chat/k8s_gpt/resource [get]
func (*Controller) Log ¶ added in v0.0.145
func (cc *Controller) Log(c *gin.Context)
@Summary 分析日志 @Security BearerAuth @Param data query string false "日志内容" @Success 200 {object} string @Router /ai/chat/log [get]
func (*Controller) Reset ¶ added in v0.0.145
func (cc *Controller) Reset(c *gin.Context)
@Summary 重置聊天历史记录 @Security BearerAuth @Success 200 {object} string @Router /ai/chat/reset [post]
func (*Controller) Resource ¶ added in v0.0.145
func (cc *Controller) Resource(c *gin.Context)
@Summary 获取K8s资源使用指南 @Security BearerAuth @Param group query string false "资源组" @Param version query string false "资源版本" @Param kind query string false "资源类型" @Success 200 {object} string @Router /ai/chat/resource [get]
type ResourceData ¶ added in v0.0.19
type ResourceData struct {
// 资源版本
Version string `form:"version"`
// 资源类型
Kind string `form:"kind"`
// 资源组
Group string `form:"group"`
// 资源描述
Describe string `form:"describe"`
// 定时任务
Cron string `form:"cron"`
// 日志
Data string `form:"data"`
Field string `form:"field"`
Name string `form:"name"`
Namespace string `form:"namespace"`
// 事件
Note string `form:"note"`
Source string `form:"source"`
Reason string `form:"reason"`
ReportingController string `form:"reportingController"`
Type string `form:"type"`
RegardingKind string `form:"regardingKind"`
// AnyQuestion 任意提问
Question string `form:"question"`
}