package main import ( "easy_rag/api" "easy_rag/config" "easy_rag/internal/database" "easy_rag/internal/embeddings" "easy_rag/internal/llm" "easy_rag/internal/pkg/rag" "github.com/labstack/echo/v4" ) // Rag is the main struct for the rag application func main() { cfg := config.NewConfig() llm := llm.NewOllama( cfg.OllamaEndpoint, cfg.OllamaModel, ) embeddings := embeddings.NewOllamaEmbeddings( cfg.OllamaEmbeddingEndpoint, cfg.OllamaEmbeddingModel, ) database := database.NewMilvus(cfg.MilvusHost) // Rag instance rag := rag.NewRag( llm, embeddings, database, ) // Echo WebServer instance e := echo.New() // Wrapper for API api.NewAPI(e, rag) // Start Server e.Logger.Fatal(e.Start(":4002")) }