Introdução geral
O GraphAgent é uma estrutura de código aberto hospedada no GitHub e desenvolvida pela Ji-Cather. Ele usa o Large Language Model (LLM) para simular o comportamento humano e gerar gráficos sociais dinâmicos com atributos textuais. Essa ferramenta é adequada para cenários como mídia social on-line, comércio eletrônico e criação de ensaios, ajudando os usuários a analisar profundamente as interações na Web. Ela não apenas gera estruturas de gráficos que correspondem às características do mundo real, mas também verifica a precisão da simulação comparando-a com gráficos reais. O código do GraphAgent é gratuito e aberto e pode ser baixado, modificado e usado para pesquisas em sociologia, ciência de redes e muito mais.
Lista de funções
- Simulação do comportamento humanoGerar um gráfico de relacionamento social simulando interações humanas reais por meio de um grande modelo.
- Geração dinâmica de gráficos sociaisCrie diagramas dinâmicos com atributos de texto com base em dados de entrada ou solicitações do usuário.
- Validação da estrutura do gráficoCompare os gráficos gerados com os gráficos reais para avaliar a precisão dos recursos macro e micro.
- Expansão de gráficos em grande escalaSuporte para geração de gráficos muito grandes com 100.000 nós ou 10 milhões de bordas.
- Ajuste de código abertoCódigo completo: O código completo é fornecido e os usuários podem personalizar a funcionalidade de acordo com suas necessidades.
Usando a Ajuda
O GraphAgent é uma ferramenta de código aberto baseada no GitHub e requer alguma base técnica para ser instalado e usado. Abaixo está um guia detalhado de instalação e operação para garantir que você possa começar a usar rapidamente.
Processo de instalação
- Preparação do ambiente
- Instale o Python 3.9 (versão recomendada). No terminal, digite
python --versão
Verifique a versão. - Instale o Git. Os usuários do Windows podem fazer o download no site oficial, enquanto os usuários do Mac podem instalá-lo com o aplicativo
brew install git
. - Para criar um ambiente virtual: No terminal, digite
conda create --name LLMGraph python=3.9
e, em seguida, ativarconda activate LLMGraph
.
- Instale o Python 3.9 (versão recomendada). No terminal, digite
- Baixar o GraphAgent
- Digite-o no terminal:
git clone https://github.com/Ji-Cather/GraphAgent.git
. - Vá para o catálogo de projetos:
cd GraphAgent
.
- Digite-o no terminal:
- Instalação de dependências
- Instale a biblioteca do AgentScope:
- importação
git clone https://github.com/modelscope/agentscope/
. - Acesso ao catálogo
cd agentscope
e, em seguida, executegit reset --hard 1c993f9
Versão bloqueada. - Instalação:
pip install -e . [distribute]
.
- importação
- Instale as dependências do projeto: execute no diretório do GraphAgent
pip install -r requirements.txt
.
- Instale a biblioteca do AgentScope:
- Configuração de chaves de API
- show (um ingresso)
LLMGraph/llms/default_model_configs.json
Documentação. - Adicione sua chave de API de modelo, como a da OpenAI
gpt-3.5-turbo-0125
talvez VLLM (usado em uma expressão nominal)llama3-70B
. - Exemplo de configuração:
{ "config_name": "gpt-3.5-turbo-0125", "model_name": "gpt-3.5-turbo-0125", "model_type": "openai_chat", "api_key": "sk-your-key", "generate_args": {"max_tokens": 2000, "temperature": 0,8} }
- Depois de salvar o arquivo, verifique se a chave é válida.
- show (um ingresso)
- Projetos em andamento
- No terminal, digite
export PYTHONPATH=. /
Configuração de variáveis de ambiente. - Selecione o modelo de ponta de modelo, por exemplo
export MODEL=gpt
(com modelo GPT).
- No terminal, digite
Preparação de dados
- Faça o download de dados de exemplo:
- importação
git clone https://oauth2:RxG7vLWFP_NbDhmB9kXG@www.modelscope.cn/datasets/cather111/GAG_data.git
. - Os dados incluem amostras de tweets, classificações de filmes e citações de ensaios.
- importação
Funções principais
1. simulação do comportamento humano e geração de gráficos sociais
- Geração de gráficos a partir de dados::
- Rede de Tweets:
python main.py --task tweets --config "small" --build --launcher_save_path "LLMGraph/llms/launcher_info_none.json"
. - Rede de classificação de filmes:
python main.py --task movielens --config "small" --build --launcher_save_path "LLMGraph/llms/launcher_info_none.json"
. - Rede de citação de teses:
python main.py --task citeseer --config "small" --build --launcher_save_path "LLMGraph/llms/launcher_info_none.json"
.
- Rede de Tweets:
- Geração de diagramas a partir da entrada do usuário::
- Exemplo:
python main.py --user_input "Quero simular interações autor-papel e gerar redes de citação altamente agrupadas" --build
.
- Exemplo:
- resultado de saídaOs arquivos gerados estão no caminho especificado e podem ser visualizados com uma ferramenta de visualização, como o Gephi.
2. operações aceleradas paralelas
- Iniciando serviços paralelosExecutar em um terminal
python start_launchers.py --launcher_save_path "LLMGraph/llms/launcher_info.json"
. - operarEm outro terminal, execute
python main.py --task tweets --config "small" --build --launcher_save_path "LLMGraph/llms/launcher_info.json"
. - de pontaTP3T: 90,41 TP3T speedup para geração de gráficos em larga escala.
3. validação da estrutura da figura
- Executar o script de avaliação::
- Redes sociais:
python evaluate/social/main.py
. - Rede de filmes:
python evaluate/movie/main.py
. - Citando a Web:
python evaluate/article/main.py
.
- Redes sociais:
- Análise dos resultadosGeração de relatórios mostrando características macroscópicas (por exemplo, distribuições de lei de potência) e microestruturas (levantamento de 11%) do gráfico.
habilidade operacional
- modo de depuraçãoExecução com uma única porta (por exemplo
--launcher_save_path "LLMGraph/llms/launcher_info_none.json"
) para facilitar a solução de problemas. - PersonalizaçãoModificação
main.py
ou arquivos de configuração para ajustar os parâmetros do modelo ou as regras de geração de gráficos. - Exibir ajuda: Executar
python main.py --help
Obter detalhes do comando.
advertência
- Certifique-se de que a chave da API seja válida, caso contrário, o programa não poderá chamar o big model.
- A geração de gráficos em grande escala requer um computador de alto desempenho com pelo menos 16 GB de RAM.
- O projeto é atualizado continuamente; verifique regularmente o GitHub para obter a versão mais recente.
cenário do aplicativo
- Análise de mídia social
Modelagem das interações do usuário e geração de redes de atenção para ajudar na propagação do impacto da pesquisa. - Estudo de recomendação de comércio eletrônico
Otimização do design do sistema de recomendação por meio de gráficos de interação usuário-item. - Rede de Citações Acadêmicas
Gerar mapas de citação de artigos e analisar tendências de pesquisa e relações acadêmicas. - Um experimento sociológico
Uso de dados simulados para estudar padrões de comportamento humano e explorar as leis da evolução da rede.
QA
- Qual o tamanho do gráfico que o GraphAgent pode gerar?
Oferece suporte a gráficos de grande escala com 100.000 nós ou 10 milhões de bordas, que são rápidos e podem ser acelerados em paralelo. - Preciso pagar?
A estrutura é gratuita, mas a chamada de modelos grandes pode exigir uma taxa de API (por exemplo, OpenAI). - Os dados chineses estão disponíveis?
Sim, tanto o chinês quanto o inglês são aceitos, desde que estejam em formato de texto. - E se eu receber um erro de tempo de execução?
Verifique a versão do Python, a instalação da dependência e a configuração da API ou peça ajuda em Problemas do GitHub.