Introdução geral
O Xorbits Inference (ou Xinference, para abreviar) é uma biblioteca avançada e versátil que se concentra em fornecer implantação distribuída e fornecimento de modelos de linguagem, modelos de reconhecimento de fala e modelos multimodais. Com o Xorbits Inference, os usuários podem facilmente implantar e servir seus próprios modelos ou modelos avançados incorporados com um único comando. Seja na nuvem, em um servidor local ou em um computador pessoal, o Xorbits Inference é executado com eficiência. A biblioteca é especialmente adequada para pesquisadores, desenvolvedores e cientistas de dados, para ajudá-los a concretizar todo o potencial dos modelos de IA de ponta.
Lista de funções
- implantação distribuídaSuporte a cenários de implantação distribuída, permitindo que as tarefas de inferência de modelos sejam distribuídas sem problemas em vários dispositivos ou máquinas.
- serviço de modelagemSimplificando o processo de servir grandes modelos de linguagem, modelos de reconhecimento de fala e modelos multimodais.
- Implementação de comando únicoImplementação e modelos de serviço com um único comando, tanto para ambientes experimentais quanto de produção.
- Utilização de hardware heterogêneo: A Intelligence aproveita o hardware heterogêneo, incluindo GPUs e CPUs, para acelerar as tarefas de inferência de modelos.
- APIs e interfaces flexíveisInterface de usuário: Fornece uma variedade de interfaces para interagir com o modelo, com suporte a RPC, API RESTful (compatível com a API OpenAI), CLI e WebUI.
- Modelos avançados incorporadosSuporte integrado a uma ampla variedade de modelos de código aberto de ponta, que os usuários podem usar diretamente para realizar experimentos.
Usando a Ajuda
Processo de instalação
- Preparação ambientalVerifique se o Python 3.7 ou posterior está instalado.
- Instalação do Xorbits Inference::
pip install xorbits-inference
- Verificar a instalaçãoApós a conclusão da instalação, você pode verificar se a instalação foi bem-sucedida usando o seguinte comando:
xinference --version
Diretrizes para uso
modelo de implantação
- Modelos de carregamentoUse o seguinte comando para carregar um modelo pré-treinado:
xinference load-model --model-name <模型名称>
Exemplo:
xinference load-model --model-name gpt-3
- Início dos serviçosApós carregar o modelo, inicie o serviço:
xinference serve --model-name <模型名称>
Exemplo:
xinference serve --model-name gpt-3
- Chamando a APIAPI RESTful: Depois que o serviço é iniciado, ele pode ser chamado por meio de uma API RESTful:
curl -X POST http://localhost:8000/predict -d '{"input": "你好"}'
Usando o modelo incorporado
O Xorbits Inference tem suporte integrado para uma ampla gama de modelos avançados que podem ser usados diretamente pelo usuário para realizar experimentos. Exemplo:
- modelo de linguagemPor exemplo, GPT-3, BERT, etc.
- modelo de reconhecimento de fala: por exemplo, DeepSpeech, etc.
- modelo multimodal: por exemplo, CLIP, etc.
implantação distribuída
O Xorbits Inference oferece suporte à implantação distribuída, permitindo que os usuários distribuam perfeitamente as tarefas de inferência de modelos em vários dispositivos ou máquinas. As etapas são descritas a seguir:
- Configuração de um ambiente distribuídoInstalação: Instale o Xorbits Inference em cada nó e configure a conexão de rede.
- Iniciando serviços distribuídosInício dos serviços distribuídos no nó mestre:
xinference serve --distributed --nodes <节点列表>
Exemplo:
xinference serve --distributed --nodes "node1,node2,node3"
- Chamada da API distribuídaAPI RESTful: semelhante às implantações de nó único, ela é chamada por meio de uma API RESTful:
curl -X POST http://<主节点IP>:8000/predict -d '{"input": "你好"}'
problemas comuns
- Como faço para atualizar o modelo? Use o seguinte comando para atualizar o modelo:
xinference update-model --model-name <模型名称>
- Como posso visualizar os registros? Use o seguinte comando para visualizar o registro de serviço:
xinference logs --model-name <模型名称>