Este assistente não “adivinha”. Ele entende a sua pergunta, identifica o tributo, o produto e o estado envolvidos, consulta bases de dados e a legislação oficial, e responde sempre dizendo de onde tirou a informação. Abaixo, um mapa de como ele opera e de quais dados ele tem acesso.
Cada pergunta passa por estas etapas antes de virar resposta.
Identifica o tributo (ICMS, ISS, PIS/COFINS…), o produto/NCM e o estado (UF).
Se a regra depende do estado e ele não foi informado, o assistente pergunta a UF em vez de chutar.
Não para na primeira: confirma o número no banco, a base legal na norma e o tratamento na matéria do estado.
O dado atualizado do banco e a norma oficial prevalecem. Não inventa base legal nem prazo.
Entrega o valor + a base legal e mostra de onde veio (banco, estado, legislação ou precedente).
Fontes complementares e em camadas, cruzadas conforme a pergunta — o número no banco, a regra na norma, o tratamento na matéria.
Alíquota de ICMS-ST, MVA e FCP por NCM e por estado, além de convênios, protocolos e pauta fiscal.
Alíquota interna e interestadual (DIFAL), redução, isenção, diferimento, não-incidência, PIS/COFINS, IPI, Imposto de Importação, CPRB, NBS, CST/CFOP/CSOSN, classificação do NCM e a Reforma Tributária (IBS/CBS).
Perguntas e respostas das SEFAZ por estado, ISS / Lei Complementar 116 (serviço × município), atos do CONFAZ e COTEPE, e os manuais e Notas Técnicas dos documentos fiscais eletrônicos.
O texto integral dos regulamentos de ICMS, artigo por artigo e por anexo, de São Paulo, Paraná e Santa Catarina. Quando você cita um artigo, o assistente confere o texto real do dispositivo antes de confirmar — não confirma de cabeça.
Matérias técnicas que explicam o tratamento tributário de um tema (um produto, uma operação), com roteiro, exemplos de cálculo, lançamento na EFD e Simples Nacional. Cobrem ICMS-SP, IPI e ISS-SP, e crescem por estado. É a camada do “como fazer”, sempre cruzada com o número do banco e a norma.
Histórico de consultas tributárias respondidas por consultores, usado como contexto e referência (a resposta oficial sempre prevalece sobre o precedente).
Você pode anexar uma nota fiscal (XML) ou DANFE (PDF) e perguntar sobre ela: o assistente lê NCM, CFOP, CST, estado e itens, e cruza com as bases acima para analisar a operação.
O quê, onde e quais documentos o assistente alcança.
Em cada resposta há o “Detalhes da consulta”: quais fontes foram usadas, qual base de dados e quais informações entraram na resposta. Assim o consultor confere a origem e, se algo estiver errado ou desatualizado, corrige ali mesmo, melhorando o assistente continuamente.
Visão prática de onde os dados moram, quais serviços rodam, como o agente opera e o que acontece quando você sobe um dado novo. Visível só para administradores.
A linha do assistente (YAITEC/Agno) e os serviços que ela usa.
yfiscodata-app (PM2), uvicorn em 127.0.0.1:8016.yfiscodata.yaitec.dev via nginx.gpt-4.1, com fallback Anthropic claude-sonnet. Embeddings text-embedding-3-small./root/yfiscodata-backend na vm2.Cada tipo de dado tem um lugar e um serviço próprio.
yfiscodata.db: usuários, conversas, mensagens, feedback do consultor, respostas padrão e a fila de ingestão.:3307) e PostgreSQL schema fisco (:5447).:6353): fiscodata_legislacao_v2 (~68,6 mil trechos: RICMS SP/PR/SC, matérias, FAQ SEFAZ, ISS, CONFAZ/COTEPE, NT dos DF-e, federal) e fiscodata_consultas (~2,5 mil precedentes).Como o código atualizado chega no ar.
scp) para /root/yfiscodata-backend + pm2 restart yfiscodata-app. Backup do estado anterior antes de cada deploy./health; teste no chat conferindo o “Detalhes da consulta” de uma pergunta conhecida.Suba um dado novo (PDF, DOCX, TXT). Clique Ingerir e ele é parseado e publicado ao vivo no RAG do assistente. Estruturados (SQL/CSV/XML) ficam na fila para carga na base relacional.
Pipeline da linha Agno: classificador (identifica área/tributo e extrai NCM/UF/produto) → especialistas por área (com acesso amplo às ferramentas, para cruzar camadas) → consolidação.
OpenAI gpt-4.1 como modelo principal, com fallback para Anthropic
claude-sonnet em caso de instabilidade/limite. Embeddings de busca:
text-embedding-3-small (1536 dimensões).
Cada conversa é persistida no nosso banco (pergunta, resposta, trajetória de ferramentas, fontes, latência). Custo/token opcional via Langfuse.
MySQL — Substituição Tributária: tabelas por UF (uf_sp, uf_rj…),
segmentos, convenio, acordos, pautas — campos
ncm, cest, alíquota, mva, fcp, legislação.
PostgreSQL (schema fisco): icms_aliquota_interna,
icms_aliquota_interestadual, icms_reducao, icms_isencao,
icms_diferimento, icms_nao_incidencia, pis_cofins,
aliquota_ipi, imposto_importacao, cprb, nbs,
cst_icms/cst_pis_cofins, cfop, csosn_sn,
ncm_<capítulo>, reforma_trib_geral, produtos,
fisco_estados.
fiscodata_legislacao_v2 — ~68,6 mil trechos. Metadados por trecho: uf,
tipo_documento, base_legal, titulo, imposto,
fonte. Filtro por UF (+ nacional) e por tipo; busca por artigo citado via índice de
texto no titulo. Tipos: ricms (texto dos artigos SP/PR/SC),
materia (matérias/boletins por estado: ICMS-SP, IPI, ISS-SP), faq_sefaz,
iss (serviço×município), confaz/cotepe, manuais e NTs dos DF-e,
federal (previdenciário).
fiscodata_consultas — ~2.511 precedentes de consultores (filtro por área/NCM,
deduplicação anti-vazamento). Usado como contexto; o oficial prevalece.
search_icms_aliquot, query_icms_interna/interestadual/
reducao/isencao/diferimento/nao_incidencia,
query_pis_cofins, query_ipi, query_imposto_importacao,
query_cprb, query_nbs, query_fiscal_ncm,
query_reforma_tributaria, query_produto, describe_cst/
cfop/csosn, query_convenio/acordos_st/
pauta_fiscal, rag_search, legislacao_search.
O consultor avalia/corrige respostas no painel. Respostas cravadas viram fonte primária por tema/UF. Cada falha recebe um diagnóstico que roteia a correção: