func NewController()

in src/psearch/serving/internal/api/handlers.go [39:59]


func NewController(cfg *config.Config) (*Controller, error) {
	ctx := context.Background()

	// Create the embedding service
	embeddingSvc, err := services.NewEmbeddingService(ctx, cfg)
	if err != nil {
		return nil, fmt.Errorf("failed to create embedding service: %v", err)
	}

	// Create the Spanner service
	spannerSvc, err := services.NewSpannerService(ctx, cfg, embeddingSvc)
	if err != nil {
		return nil, err
	}

	return &Controller{
		config:      cfg,
		spannerSvc:  spannerSvc,
		embeddingSvc: embeddingSvc,
	}, nil
}