Receber por email
← Voltar para o catálogo

backend-fastapi

Documentation for the FastAPI backend, endpoints, and dependency injection.

367estrelas
Atualizado há 4 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add aiskillstore/marketplace

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/backend-fastapi/svg)](https://www.skillteca.com.br/skills/backend-fastapi)

Skills relacionadas

Ver todas de Segurança →

Alerta por categoria

Receba novas skills de Segurança toda segunda

1 email curto, só com as skills novas de Segurança. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Backend Architecture (FastAPI)

Overview

The backend is a FastAPI application located in backend/. It powers the chatbot and RAG functionality.

Entry Point

  • File: backend/main.py
  • Run: uvicorn backend.main:app --reload (or via npm run dev)
  • Port: Defaults to 8000.

Endpoints

POST /api/chat

  • Purpose: Main RAG chat endpoint.
  • Input: ChatRequest (query, history, user_context).
  • Process:
  • Embed query.
  • Search Qdrant (search_qdrant).
  • Build prompt (build_rag_prompt).
  • Generate Agent response.
  • Output: ChatResponse (answer, contexts).

POST /api/ask-selection

  • Purpose: Targeted Q&A on selected text.
  • Input: AskSelectionRequest (question, selected_text).
  • Process:
  • Validates selection length.
  • Builds selection-specific prompt.
  • specific Agent instructions.

Dependencies & Utils

  • backend/utils/config.py: Qdrant initialization.
  • backend/utils/helpers.py: Embedding and Prompt building logic.
  • backend/models.py: OpenAI/Gemini client setup.

Environment Variables

  • GEMINI_API_KEY: For LLM and Embeddings.
  • QDRANT_URL, QDRANT_API_KEY: Vector DB connection.
Compartilhar X LinkedIn