Files
gochat/internal/model/article_embedding.go
T
2026-06-04 15:44:48 +08:00

18 lines
657 B
Go

package model
import (
"encoding/json"
)
// ArticleEmbedding stores vector embeddings for semantic article search.
// Reference: Chatwoot ArticleEmbedding (enterprise) + P2B M9 spec
type ArticleEmbedding struct {
Base
ArticleID uint `gorm:"not null;index" json:"article_id"`
Embedding json.RawMessage `gorm:"type:jsonb" json:"embedding"` // vector data (1536-dim, stored as JSON for portability)
Term string `gorm:"type:text;not null" json:"term"` // searchable text content
Article Article `gorm:"foreignKey:ArticleID" json:"article,omitempty"`
}
func (ArticleEmbedding) TableName() string { return "article_embeddings" }