Adds `_fetch_page_content()`, which downloads a URL with a browser-like User-Agent and uses BeautifulSoup with the lxml parser to strip scripts, navigation, and other non-content markup, returning up to 3000 characters of readable text. The response validator now also compares generated replies against this scraped text, flagging named entities and claims that do not appear in the retrieved page content. Dependencies: adds beautifulsoup4==4.12.3 and pins lxml==5.3.0 for parser compatibility.
145 lines
7.5 KiB
JSON
Executable File
145 lines
7.5 KiB
JSON
Executable File
{
|
|
"name": "Marco",
|
|
"age": "65",
|
|
"gender": "Masculino",
|
|
"location": "MG/Brasil",
|
|
"interests": [
|
|
"Eletrônica",
|
|
"compras de informática (procurando notebook na KaBuM)",
|
|
"clima e previsão do tempo",
|
|
"monitores de computador (busca por modelos de 22 polegadas, antes 17 polegadas)"
|
|
],
|
|
"personality_traits": [
|
|
"extrovertido",
|
|
"agradece de forma calorosa e educada"
|
|
],
|
|
"preferences": {
|
|
"communication_style": "encerra interações com agradecimentos simpáticos",
|
|
"topics_to_avoid": [],
|
|
"topics_of_interest": [
|
|
"g",
|
|
"o",
|
|
"s",
|
|
"t",
|
|
"o",
|
|
" ",
|
|
"d",
|
|
"e",
|
|
" ",
|
|
"f",
|
|
"a",
|
|
"z",
|
|
"e",
|
|
"r",
|
|
" ",
|
|
"a",
|
|
"ç",
|
|
"õ",
|
|
"e",
|
|
"s",
|
|
" ",
|
|
"d",
|
|
"e",
|
|
" ",
|
|
"s",
|
|
"e",
|
|
"x",
|
|
"o",
|
|
"horários de ônibus",
|
|
"transporte público",
|
|
"site do TSE e símbolos eleitorais",
|
|
"comparação e compra de notebooks",
|
|
"previsão do tempo",
|
|
"Ubatuba (SP)",
|
|
"comparação e compra de monitores"
|
|
],
|
|
"preferred_communication_time": "manha",
|
|
"content_format_preference": "tutoriais_praticos",
|
|
"project_complexity": "intermediario_avancado",
|
|
"notification_frequency": "semanal",
|
|
"preferred_tech_domains": [
|
|
"eletronica_embarcada",
|
|
"programacao_iot",
|
|
"automacao_residencial"
|
|
],
|
|
"max_response_length": "curto_a_medio",
|
|
"fragmented_input_handling": "confirmar_amigavelmente_sem_fluxo_completo",
|
|
"regional_context": "minas_gerais",
|
|
"language_register": "tecnico_acessivel_com_toque_afetuoso",
|
|
"interaction_mode_morning": "checkin_rapido_com_sugestao_do_dia",
|
|
"project_tracking": "ativo",
|
|
"seasonal_adaptation": true,
|
|
"weekend_mode": "leve_e_afetuoso_sem_sugestoes_tecnicas_intensas",
|
|
"transition_phrases": [
|
|
"vou fazer café",
|
|
"vou descansar",
|
|
"tô indo resolver algo",
|
|
"até já",
|
|
"falo depois"
|
|
],
|
|
"max_chat_duration_minutes": "15-20 antes_de_sugerir_pausa",
|
|
"component_inventory_tracking": true,
|
|
"audio_summary_preference": "ativo_para_artigos_longos",
|
|
"shopping_integration": "lojas_BR_filiadas",
|
|
"energy_pattern_learning": true,
|
|
"micro_project_duration": "15-30_minutos",
|
|
"domestic_automation_focus": "alto",
|
|
"celebration_mode_for_milestones": true,
|
|
"evening_interaction_tone": "mais_calmo_e_conversacional",
|
|
"pausa_curta_max_silent": "ate_2h_com_checkin_afetuoso",
|
|
"pausa_longa_min_silent": "2h+_sem_checkin_somente_retomada_suave",
|
|
"language_in_pause_context": "regionalismos_sutis_permitidos",
|
|
"hardware_legacy_support": "componentes_classicos_e_modernos",
|
|
"rural_urban_aware": "adaptar_para_realidade_mineira_urbana"
|
|
},
|
|
"notes": "gosto também de programação; Nome é Marco; Marco descreveu uma prática sexual com um amigo: gosta de ficar de quatro chupando o pênis dele enquanto o amigo está deitado de costas, com o próprio cú exposto para que o amigo brinque com dedos. Ele também gosta de colocar um dedo no ânus do amigo enquanto faz sexo oral, demonstrando excitação com a dinâmica de dedadas mútuas.; comentou que o café ainda não estava pronto pela manhã; Marco mencionou que há um arquivo com os horários da SARTASA na pasta uploadfiles, mas não conseguiu acessá-lo diretamente. Ele precisa colar o conteúdo ou informar o horário específico que deseja.; Marco está pesquisando um notebook na KaBuM e precisa colar o conteúdo das páginas no chat para que o agente ajude a comparar.; Marco demonstrou interesse em saber a temperatura atual de Ubatuba (SP), possivelmente por viagem ou contato com alguém da cidade.; Marco espera que o agente consiga abrir links e verificar informações diretamente (ex: temperatura de Ubatuba); tende a pedir ao agente para fazer o que ele mesmo faria no navegador, exigindo explicações claras das limitações técnicas.; Marco ajustou sua busca de monitores de 17 polegadas para 22 polegadas; compara preços em reais e valoriza transparência sobre preços confirmados vs. estimados.",
|
|
"created_at": "2026-08-24T09:59:34.623658",
|
|
"last_updated": "2026-10-26T16:46:15.899398",
|
|
"daily_routine": {
|
|
"wake_up_time": "quando acordo de manhã e se meu pau estiver duro, eu gosto de já brincar de sexo e gozar as vezes (nem sempre gozar)",
|
|
"breakfast_time": "",
|
|
"sleep_time": "",
|
|
"work_schedule": "Moro sozinho, portanto faço diaiamente tamgém todas as tarefas domésticas, além de trabalhar, estudar e fazer serviços de rua (visitar clientes, compras, etc)",
|
|
"lunch_time": "",
|
|
"dinner_time": "",
|
|
"activities": [
|
|
{
|
|
"name": "Banho e sexo individual",
|
|
"start": "19:45",
|
|
"end": "20:30"
|
|
}
|
|
]
|
|
},
|
|
"communication_style": "direta",
|
|
"topics_of_interest": [
|
|
"tecnologia"
|
|
],
|
|
"topics_to_avoid": [
|
|
"politica"
|
|
],
|
|
"auto_actions": [
|
|
"Sugerir projetos de eletrônica com programação embarcada (ex: Arduino, ESP32) com base em interesses atuais",
|
|
"Enviar notificações semanais sobre novidades em tecnologia e eletrônica personalizadas ao perfil",
|
|
"Oferecer desafios práticos de programação com foco em hardware (IoT, automação residencial)",
|
|
"Criar um feed de conteúdo técnico com tutoriais avançados de eletrônica e programação",
|
|
"Sugerir eventos locais ou online de tecnologia e eletrônica no Brasil",
|
|
"Detectar e confirmar entradas fragmentadas ou acidentais (como 'p') sem iniciar fluxo de conteúdo técnico, evitando overwhelm",
|
|
"Sugerir projetos de automação residencial compatíveis com a infraestrutura típica de Minas Gerais (clima quente, necessidade de ventilação e irrigação)",
|
|
"Oferecer resumos rápidos de artigos técnicos longos em formato de bullet points adaptados ao estilo direto do Marco",
|
|
"Mapear e lembrar componentes eletrônicos que Marco possui ou já utilizou para evitar sugestões redundantes",
|
|
"Integrar com calendário local de eventos de maker, feiras de eletrônica e meetups de IoT em MG (Belo Horizonte, Contagem, etc.)",
|
|
"Sincronizar agenda de roupas do varal, café e descanso com lembretes adaptativos baseados em horário e clima (ex: sugerir horários de menor calor para atividades externas)",
|
|
"Criar um sistema de 'compras de componentes' integrado com lojas brasileiras (Robocore, FilipeFlop, Mercado Livre) para facilitar reposição automática de itens usados em projetos",
|
|
"Sugerir micro-projetos de eletrônica de curta duração (15-30 min) compatíveis com pausas do dia a dia, respeitando a rotina doméstica do Marco",
|
|
"Implementar modo 'aposento' que reduz notificações durante períodos de descanso declarados pelo usuário",
|
|
"Mapear padrões de humor e energia ao longo do dia baseando-se no tom das mensagens para ajustar complexidade das sugestões futuras",
|
|
"Sugerir projetos de eletrônica utilitária para o dia a dia doméstico (ex: automatizar irrigação de plantas, timer para cafeteira, sensor de chuva para varal) considerando a infraestrutura residencial de MG",
|
|
"Criar alertas de promoções em lojas de componentes eletrônicos brasileiros filtrados por categorias de interesse do Marco",
|
|
"Oferecer resumos em áudio de artigos técnicos longos para momentos em que Marco está ocupado com tarefas domésticas",
|
|
"Sincronizar com calendário de feirões de eletrônica e maker spaces de MG para sugerir visitas compatíveis com sua rotina"
|
|
],
|
|
"diversos": [
|
|
"em relação a sexo eu gosto que as conversas sejam picantes e usem termos bem populares"
|
|
],
|
|
"preferred_language": "pt"
|
|
} |