Introdução ao Red Hat AI Inference on IBM Cloud
Pronto para começar a usar IA em seus aplicativos? Neste tutorial, você aprenderá a realizar inferências com modelos de base e a gerar respostas com o auxílio da IA. Em apenas 15 minutos, você estará conversando com um modelo de linguagem de grande porte e integrando a IA conversacional aos seus fluxos de trabalho.
Red Hat® AI Inference on IBM Cloud® é uma solução de IA generativa pronta para uso empresarial, privada e segura, desenvolvida com a tecnologia de IA “ Red Hat OpenShift ”. Este tutorial tem como objetivo apresentar a inferência para interagir com modelos de base, a maneira mais rápida de começar a usar IA.
O que você realizará
Neste tutorial, você realizará as seguintes tarefas:
- Configure sua conta e seu projeto no IBM Cloud.
- Faça a autenticação na API de inferência.
- Gere sua primeira resposta de chat usando um modelo de base.
- Saiba quais são os próximos passos para personalizar modelos com seus próprios dados.
Antes de Iniciar
Certifique-se de ter o seguinte:
-
Uma conta do IBM Cloud no modelo “Pay-As-You-Go” ou por assinatura. Não são oferecidas contas de teste. Para obter mais informações ou para fazer o upgrade da sua conta, consulte Tipos de conta.
-
A função “Writer” ou superior no serviço Red Hat AI Inference. Para obter mais informações, veja Gerenciando acesso ao IAM.
Obtenha o ID do seu projeto e o endpoint da API
O ID do seu projeto é obrigatório para todas as solicitações de API.
-
Acesse Red Hat AI Inference projetos.
-
Abra seu projeto.
-
Copie o ID do seu projeto e guarde-o para as próximas etapas.
Terminal de API
Todas as solicitações de API utilizam o seguinte formato básico: URL:
https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference
Substitua <project_id> pelo ID do seu projeto.
Autenticar-se na API
Antes de poder interagir com os modelos de base, é necessário autenticar suas solicitações de API. Você pode usar um token de portador ou uma chave de API do IBM Cloud. Este tutorial mostra como usar um ID de serviço com uma chave de API para acesso programático. Para obter mais informações sobre como usar um token de portador, consulte “Autenticação usando um token de portador ”.
Criar um ID de serviço e atribuir acesso
Um ID de serviço é uma forma útil de controlar e distribuir o acesso aos projetos d Red Hat AI Inference. Crie o ID do serviço e, em seguida, atribua a ele acesso ao seu projeto.
-
No console do IBM Cloud, acesse Gerenciar > Acesso (IAM) > IDs de serviço e clique em Criar.
-
Digite um nome e uma descrição para o seu ID de serviço e, em seguida, clique em Criar.
-
Na página de identificação do serviço, clique em “Atribuir acesso ”.
-
Selecione Red Hat AI Inference como serviço.
-
Na seção “Recursos”, selecione “Recursos específicos” e escolha seu projeto. Ao fazer isso, você limita o acesso a um projeto específico.
-
Na seção “Funções e ações ”, selecione a função de acesso ao serviço apropriada:
- Selecione “Writer” se precisar criar sugestões de preenchimento automático para o chat.
- Selecione “Leitor” se você precisar apenas ler as respostas do chat ou visualizar informações do modelo.
Não são necessárias funções de acesso à plataforma para acessar a API.
-
(Opcional) Adicione condições, como acesso baseado em horário, para restringir ainda mais o acesso ao ID do serviço.
-
Analise o resumo de acesso e clique em “Atribuir ”.
Crie uma chave de API
Agora que seu ID de serviço tem acesso ao seu projeto “ Red Hat AI Inference ”, crie uma chave de API para o ID de serviço para usar em suas chamadas de API.
-
Na página de identificação do serviço, clique em “Chaves de API ”.
-
Clique em “Criar” e digite um nome para sua chave de API.
-
Para o gerenciamento de chaves vazadas, selecione “Desativar a chave vazada” para desativar automaticamente a chave caso seja detectado que ela vazou.
-
Defina uma data de validade para a chave. Recomenda-se a rotação regular das chaves por motivos de segurança.
-
Clique em Criar.
-
Copie a chave da API e salve-a em um local seguro. A chave não pode ser visualizada novamente.
Agora você pode usar essa chave de API para autenticar suas solicitações. Na próxima etapa, você usará essa chave no cabeçalho “ Authorization: Bearer ” das suas chamadas de API.
Conheça os modelos disponíveis
Diferentes modelos de fundação apresentam diferentes pontos fortes; por isso, é importante analisar os modelos disponíveis para o seu projeto.
Faça a seguinte chamada de API para listar todos os modelos disponíveis. Substitua <project_id> pelo ID do seu projeto e <api_key> pela chave de API do seu serviço:
curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models' \
-H 'Accept: application/json' \
-H "Authorization: Bearer <api_key>"
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
models = client.models.list()
print(models)
A resposta mostra todos os modelos que você pode usar, juntamente com informações sobre suas funcionalidades. Você pode experimentar diferentes modelos para encontrar aquele que melhor se adapta ao seu caso de uso.
Crie sua primeira resposta de chat
Agora, envie uma mensagem para o modelo e receba uma resposta gerada por IA.
Faça a seguinte chamada de API, substituindo <project_id> pelo ID do seu projeto e <api_key> pela chave de API do seu serviço:
curl https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <api_key>" \
-d '{
"model": "granite-4-0-h-small",
"messages": [
{
"role": "developer",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Hello! Tell me about yourself"
}
]
}'
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
completion = client.chat.completions.create(
model="granite-4-0-h-small",
messages=[
{"role": "developer", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello! Tell me about yourself"}
]
)
print(completion.choices[0].message)
Você deve receber uma resposta do modelo apresentando-se.
Compreendendo a solicitação
Vamos analisar o que você acabou de fazer:
- modelo
- Você especificou o modelo “
granite-4-0-h-small”, um dos modelos básicos disponíveis. Modelos diferentes apresentam capacidades e características de desempenho distintas. - mensagens
- Você enviou duas mensagens. Uma delas era uma mensagem do desenvolvedor que definia o prompt do sistema e instruía o modelo sobre como se comportar. A mensagem do usuário incluía a sua pergunta propriamente dita, para que o modelo a respondesse.
- Terminal de API
- A solicitação foi enviada ao endpoint de inferência do seu projeto, que é responsável por direcioná-la ao modelo apropriado.
Você pode personalizar o comportamento do modelo ajustando o prompt do sistema, adicionando mais mensagens ou utilizando modelos diferentes para diferentes casos de uso.
Próximas etapas
Agora que você já começou a usar a inferência com sucesso, veja o que pode fazer a seguir:
Continuar com a inferência
-
Saiba mais sobre inferência para descobrir recursos avançados, como respostas em tempo real, ajuste de parâmetros do modelo e gerenciamento do histórico de conversas.
-
Consulte a documentação da API de preenchimento automático de bate-papo do OpenAI para obter a referência completa da API.
-
Integre a inferência às suas aplicações usando o SDK do Python ou outras linguagens de programação.
Personalize modelos com seus dados
Obsoleto
Pronto para ir além dos modelos de uso geral? É possível personalizar os modelos básicos com o conhecimento e as habilidades específicas da sua organização por meio do alinhamento de modelos:
-
Elabore uma taxonomia que inclua seus conhecimentos e habilidades profissionais.
-
Gere dados sintéticos a partir da sua taxonomia.
-
Treine um modelo personalizado de acordo com suas necessidades específicas.
Ao fazer isso, você pode ajustar os modelos para que eles compreendam o contexto, a terminologia e os requisitos do seu negócio, o que vai além do que os modelos de uso geral podem oferecer.