ManyPerson - simulador de opinião pública com personas de IA da Coreia baseado no MDIS do Statistics Korea
(manyperson.com)-
Serviço de simulação de opinião pública com personas de IA que reflete a demografia, a estrutura familiar, a renda, os ativos, as dívidas e a distribuição de ocupações da sociedade coreana com base nos microdados MDIS do Statistics Korea
-
Quando o usuário insere uma pergunta, o sistema seleciona cidadãos de IA que correspondem às condições, gera respostas e analisa os resultados por apoio/oposição, alternativas, faixa etária, gênero, quintil de renda, grupo ocupacional etc.
-
Os CSVs brutos do MDIS da Pesquisa de Finanças e Bem-Estar dos Domicílios de 2025 foram parseados e unidos em 34.880 registros de domicílios mestres e 69.929 registros de membros do domicílio para compor cerca de 41 mil personas coreanas para o serviço
-
Usa o Gemini para gerar nomes de ocupação, personalidade, hobbies, cidade natal e autoapresentação em primeira pessoa que não podem ser obtidos apenas com os códigos do Statistics Korea, aplicando restrições para evitar contradições entre renda anual, ativos, dívidas, ocupação e narrativa
-
Em vez de simplesmente perguntar uma vez a um LLM "se perguntássemos a 100 coreanos?", personas baseadas em distribuição real respondem cada uma com contexto e estilo de fala diferentes, e os resultados são agregados com pesos estatísticos
Problemas das simulações de opinião com LLMs existentes
Se você pedir diretamente a um LLM "simule a opinião de 100 cidadãos coreanos", há o problema de os resultados ficarem excessivamente medianos ou enviesados para alguns poucos tipos de ocupação, região e perfil com os quais o modelo está mais familiarizado
-
A estrutura real dos domicílios na Coreia, os quintis de renda, os grupos ocupacionais, as diferenças entre região metropolitana e não metropolitana e situações como desempregado, aposentado, estudante ou dona de casa em tempo integral não são refletidas de forma suficiente
-
Especialmente em perguntas nas quais as diferenças entre grupos são importantes, como opinião pública, políticas ou reação a produtos, mais importante do que "uma resposta única plausível" é entender "quem pensa diferente e por quê"
-
Por exemplo, mesmo para a mesma pergunta sobre política imobiliária, um jovem de 20 e poucos anos sem imóvel fora da região metropolitana, uma pessoa na faixa dos 50 com casa própria na região metropolitana e uma pessoa na faixa dos 70 aposentada com renda de aluguel podem julgar a questão com fundamentos completamente diferentes
-
O ManyPerson aborda isso criando primeiro essas diferenças nos dados de contexto das personas e gerando as respostas em cima dessa base
Fonte de dados e forma de produção
-
Pipeline de geração de personas construído com base nos dados da Pesquisa de Finanças e Bem-Estar dos Domicílios de 2025 do MDIS do Statistics Korea
-
Os CSVs do domicílio mestre e dos membros do domicílio são unidos pelo número único do domicílio para criar personas em nível individual
-
Gênero, idade, relação dentro do domicílio, estado civil, escolaridade final, status ocupacional, grande classificação de ocupação, grande classificação de indústria, condição de região metropolitana, tipo de moradia, número de membros do domicílio, quintil de renda etc. são convertidos de acordo com o codebook para valores legíveis por humanos
-
Renda total do domicílio, renda disponível, gasto de consumo, gasto com alimentação, moradia, educação, saúde, ativos totais, dívidas e patrimônio líquido também são preservados como atributos da persona
-
A renda domiciliar não é usada diretamente como renda individual; em vez disso, a renda anual estimada de cada pessoa é distribuída por heurística conforme chefe do domicílio/cônjuge/filho/situação de desemprego ou aposentadoria
-
Os pesos estatísticos do Statistics Korea são armazenados em
weight, permitindo calcular não apenas a contagem simples de respostas, mas também estatísticas ponderadas proporcionais à população
Geração de detalhes das personas
-
Como os dados brutos do MDIS por si só não bastam para construir "o motivo pelo qual essa pessoa fala desse jeito", o Gemini é usado para gerar detalhes adicionais para o serviço
-
Os campos gerados incluem nome específico da ocupação, MBTI, personalidade, hobbies, cidade natal e uma breve autoapresentação
-
O nome da ocupação e a autoapresentação são gerados junto com renda anual, renda total do domicílio, patrimônio líquido, dívidas, grande classificação de ocupação e status ocupacional para ajustar o realismo
-
Se a renda anual for acima de 100 milhões de won, tende a aparecer executivo, profissional liberal de alta renda, empreendedor bem-sucedido etc.; se a renda anual for 0 won ou a pessoa estiver desempregada, aposentada ou for filho, evita-se forçar um perfil de trabalhador formal
-
Quando a renda e os ativos do domicílio são altos, mas a renda individual é baixa, o sistema reflete naturalmente contextos como dona de casa em tempo integral com cônjuge de alta renda, universitário com pais ricos ou aposentado que vive de renda de aluguel
-
Quando a dívida é alta, a apresentação pessoal ou a personalidade é projetada para revelar pressão financeira
-
Como na geração inicial surgiram problemas de incompatibilidade entre dados financeiros e narrativa, como "baixa renda, mas gerente de escritório de advocacia" ou "alta renda, mas trabalhador de meio período", um pipeline separado de regeneração na Fase 2 recalibrou novamente o occupation/bio de cerca de 41 mil pessoas
-
Os resultados gerados não são mantidos todos na memória para depois salvar; em vez disso, são processados em uma estrutura de streaming que atualiza individualmente o PostgreSQL JSONB logo após a geração de cada persona
-
Mesmo que um Pod morra no meio do processo, os dados já refletidos permanecem, e a execução pode continuar com o marcador
migrationPhase2
Fluxo de uso do serviço
-
O usuário insere uma pergunta em linguagem natural
-
O Gemini + Grounding de busca organiza a pergunta e, quando necessário, recomenda um resumo do contexto e condições de filtro
-
As personas-alvo podem ser filtradas por gênero, faixa etária, região, quintil de renda, escolaridade, grupo ocupacional, número de membros do domicílio, estado civil etc.
-
Os cidadãos de IA finalmente selecionados respondem com base no snapshot de sua própria persona
-
As respostas são salvas imediatamente no banco de dados, permitindo visualizar parte delas em tempo real na tela de progresso
-
Após a conclusão, são calculadas distribuições de positivo/neutro/negativo ou de alternativas objetivas, e também são exibidos os resultados ponderados com os pesos estatísticos do Statistics Korea
-
O serviço oferece análise cruzada por eixos demográficos como faixa etária, gênero, quintil de renda, escolaridade e grupo ocupacional
-
O resultado final é gerado como uma página compartilhável, na qual é possível ver tanto os cards de resposta de cada persona quanto os gráficos estatísticos gerais
Exemplos de uso
-
Avaliar rapidamente como "trabalhadores da região metropolitana na faixa dos 20 a 30 anos reagiriam?" a um novo serviço ou ideia de produto
-
Explorar em que fundamentos as opiniões se dividem por faixa etária, quintil de renda e grupo ocupacional em relação a políticas ou questões sociais
-
Receber avaliações de cidadãos de IA com diferentes contextos sobre copy publicitária, política de preços, prioridade de funções de app, vagas de emprego e cartas de apresentação
-
Antes de aplicar uma pesquisa real, explorar previamente quais perguntas são ambíguas ou em quais grupos as reações podem se dividir
Diferenças em relação ao Nemotron-Personas-Korea
-
Se o Nemotron-Personas-Korea é um grande dataset sintético de personas em coreano, o ManyPerson está mais próximo de transformar essa ideia em "um serviço web onde você pergunta na hora e vê o resultado"
-
O foco atual do ManyPerson, mais do que distribuir um dataset público, é montar internamente um pool de personas baseado em estatísticas e oferecer uma experiência de produto que vai da amostragem à geração de respostas e à análise estatística conforme a pergunta do usuário
-
A composição dos dados também vai além de um simples perfil demográfico e utiliza ativamente informações da Pesquisa de Finanças e Bem-Estar dos Domicílios sobre renda, ativos, dívidas e gastos de consumo tanto na geração das personas quanto na interpretação dos resultados
Stack técnico
-
Servidor web baseado em Node.js, Express e EJS (para desenvolvimento rápido, alguns módulos foram escritos de forma simples em Go)
-
Armazenamento de dados de personas, simulações, respostas e pagamentos/créditos em PostgreSQL/Cloud SQL
-
Os atributos expandidos das personas são armazenados em PostgreSQL JSONB para gerenciar com flexibilidade ocupação, escolaridade, quintil de renda, cidade natal, personalidade e autoapresentação
-
Uso de Valkey para filas e cache
-
Operação separada de servidor/worker sobre GKE Autopilot
-
Uso de modelos da linha Gemini 3 e da Vertex AI Flex API para gerar detalhes das personas e respostas das simulações
-
Streaming em tempo real do progresso da simulação e das respostas mais recentes via SSE
Limitações e cuidados
-
Os resultados do ManyPerson não são uma pesquisa de opinião real, e sim uma simulação virtual baseada em personas de IA
-
Como depende do escopo público e do nível de codificação do MDIS do Statistics Korea, variáveis como região detalhada, inclinação política e conhecimento de temas em tempo real exigem estimativa ou entrada separada
-
Os detalhes gerados por LLM são informações sintéticas para aumentar o realismo, e qualquer semelhança com pessoas reais não é intencional
-
Quanto menor a amostra ou mais estreito o filtro, mais apropriado é tratar os resultados como material exploratório de referência
-
Ainda assim, a ideia é que, em vez de "fazer um único LLM imaginar a opinião média dos coreanos", um ponto de partida mais útil seja primeiro criar diversos cidadãos de IA com base em dados demográficos reais e dados domiciliares e então reunir suas respostas
Ainda não há comentários.