Config
src.config
Configuração do Pede AI.
Pacote centralizado para acesso a prompts, cardápio e configurações do tenant.
Example
get_cardapio() -> dict
Retorna o cardápio completo.
Returns:
| Type | Description |
|---|---|
dict
|
Dicionário com todos os itens, remoções e observações. |
Source code in src/config/cardapio.py
get_item_por_id(item_id: str) -> dict | None
Busca um item do cardápio pelo ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
dict | None
|
Dados do item ou None se não encontrado. |
Source code in src/config/cardapio.py
get_variantes(item_id: str) -> list[str]
Retorna lista de opções de variante de um item.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
list[str]
|
Lista de nomes de variantes (ex: ['simples', 'duplo', 'triplo']). |
Source code in src/config/cardapio.py
get_preco_item(item_id: str) -> int | None
Retorna preço base do item (sem variante).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
int | None
|
Preço em centavos ou None se não existir. |
Source code in src/config/cardapio.py
get_prompt(nome: str) -> str
Retorna um prompt por nome.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
nome
|
str
|
Nome do prompt (ex: 'classificador_intencoes'). |
required |
Returns:
| Type | Description |
|---|---|
str
|
O conteúdo do prompt. |
Raises:
| Type | Description |
|---|---|
KeyError
|
Se o prompt não existir. |
Source code in src/config/prompts.py
get_roteador_config() -> RoteadorConfig
Retorna configuracao do roteador (cached).
Returns:
| Type | Description |
|---|---|
RoteadorConfig
|
RoteadorConfig com todos os parametros carregados do YAML. |
Source code in src/config/roteador_config.py
src.config.cardapio
Módulo de Cardápio do Pede AI.
Fornece acesso centralizado aos dados do cardápio.
Example
get_cardapio() -> dict
Retorna o cardápio completo.
Returns:
| Type | Description |
|---|---|
dict
|
Dicionário com todos os itens, remoções e observações. |
Source code in src/config/cardapio.py
get_item_por_id(item_id: str) -> dict | None
Busca um item do cardápio pelo ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
dict | None
|
Dados do item ou None se não encontrado. |
Source code in src/config/cardapio.py
get_itens_por_categoria(categoria: str) -> list[dict]
Retorna todos os itens de uma categoria.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
categoria
|
str
|
Nome da categoria (ex: 'lanche', 'bebida', 'acompanhamento'). |
required |
Returns:
| Type | Description |
|---|---|
list[dict]
|
Lista de itens da categoria. |
Example
Source code in src/config/cardapio.py
get_remocoes_genericas() -> list[str]
Retorna lista de palavras de remoção genéricas.
Returns:
| Type | Description |
|---|---|
list[str]
|
Lista de palavras como 'sem', 'tira', 'retira', etc. |
get_observacoes_genericas() -> list[str]
Retorna lista de observações genéricas.
Returns:
| Type | Description |
|---|---|
list[str]
|
Lista de observações como 'bem passado', 'ao ponto', etc. |
get_variantes(item_id: str) -> list[str]
Retorna lista de opções de variante de um item.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
list[str]
|
Lista de nomes de variantes (ex: ['simples', 'duplo', 'triplo']). |
Source code in src/config/cardapio.py
get_preco_item(item_id: str) -> int | None
Retorna preço base do item (sem variante).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
int | None
|
Preço em centavos ou None se não existir. |
Source code in src/config/cardapio.py
get_nome_item(item_id: str) -> str | None
Retorna nome do item.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
item_id
|
str
|
ID do item (ex: 'lanche_001'). |
required |
Returns:
| Type | Description |
|---|---|
str | None
|
Nome do item ou None se não existir. |
Source code in src/config/cardapio.py
src.config.prompts
Configuração de Prompts e Tenant do Pede AI.
Fornece acesso centralizado a prompts, intenções válidas e informações do tenant.
Example
get_prompt(nome: str) -> str
Retorna um prompt por nome.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
nome
|
str
|
Nome do prompt (ex: 'classificador_intencoes'). |
required |
Returns:
| Type | Description |
|---|---|
str
|
O conteúdo do prompt. |
Raises:
| Type | Description |
|---|---|
KeyError
|
Se o prompt não existir. |
Source code in src/config/prompts.py
get_intencoes_validas() -> list[str]
get_tenant_info() -> dict[str, str]
Retorna informações do tenant (restaurante).
Returns:
| Type | Description |
|---|---|
dict[str, str]
|
Dicionário com tenant_id e tenant_nome. |
Source code in src/config/prompts.py
get_tenant_id() -> str
src.config.roteador_config
Loader de configuracao do roteador de intencoes.
Carrega config/roteador.yml e fornece acesso via dataclass imutavel.
Example
RoteadorConfig(rag_forte_threshold: float, rag_fraco_threshold: float, min_similarity: float, max_chars: int, top_k: int, alta_prioridade: frozenset[str], llm_provider: str, llm_model: str, embedding_model: str, embedding_cache_path: Path, exemplos_path: Path)
dataclass
Configuracao imutavel do classificador de intencoes.
Attributes:
| Name | Type | Description |
|---|---|---|
rag_forte_threshold |
float
|
Se confianca >= threshold, usa RAG direto sem LLM. |
rag_fraco_threshold |
float
|
Se confianca < threshold, usa fallback LLM puro. |
min_similarity |
float
|
Similaridade minima para incluir exemplo na votacao. |
max_chars |
int
|
Truncamento maximo da mensagem. |
top_k |
int
|
Numero de exemplos similares a buscar. |
alta_prioridade |
frozenset[str]
|
Intents de alta prioridade (acao > conversacao). |
llm_provider |
str
|
Nome do provider LLM ('groq' ou 'ollama'). |
llm_model |
str
|
Nome do modelo LLM a usar. |
embedding_model |
str
|
Nome do modelo de embedding. |
embedding_cache_path |
Path
|
Caminho do cache de embeddings. |
exemplos_path |
Path
|
Caminho do arquivo de exemplos. |
get_roteador_config() -> RoteadorConfig
Retorna configuracao do roteador (cached).
Returns:
| Type | Description |
|---|---|
RoteadorConfig
|
RoteadorConfig com todos os parametros carregados do YAML. |