|
1 | 1 | <!-- |
2 | 2 | CO_OP_TRANSLATOR_METADATA: |
3 | 3 | { |
4 | | - "original_hash": "c2a244c959e00da1ae1613d2ebfdac65", |
5 | | - "translation_date": "2025-07-29T09:01:13+00:00", |
| 4 | + "original_hash": "4bdff5070d182c64143dfe5a581d0ec7", |
| 5 | + "translation_date": "2025-08-28T18:28:15+00:00", |
6 | 6 | "source_file": "02-SetupDevEnvironment/README.md", |
7 | 7 | "language_code": "br" |
8 | 8 | } |
9 | 9 | --> |
10 | | -# Configurando o Ambiente de Desenvolvimento para IA Generativa em Java |
11 | 10 |
|
12 | | -> **Início Rápido**: Codifique na nuvem em 2 minutos - Vá para [Configuração do GitHub Codespaces](../../../02-SetupDevEnvironment) - sem necessidade de instalação local e utiliza modelos do GitHub! |
13 | 11 |
|
14 | | -> **Interessado no Azure OpenAI?** Veja nosso [Guia de Configuração do Azure OpenAI](getting-started-azure-openai.md) com etapas para criar um novo recurso Azure OpenAI. |
| 12 | +--- |
15 | 13 |
|
16 | | -## O que Você Vai Aprender |
17 | | - |
18 | | -- Configurar um ambiente de desenvolvimento Java para aplicações de IA |
19 | | -- Escolher e configurar seu ambiente de desenvolvimento preferido (priorizando a nuvem com Codespaces, contêiner local ou configuração local completa) |
20 | | -- Testar sua configuração conectando-se aos Modelos do GitHub |
21 | | - |
22 | | -## Índice |
23 | | - |
24 | | -- [O que Você Vai Aprender](../../../02-SetupDevEnvironment) |
25 | | -- [Introdução](../../../02-SetupDevEnvironment) |
26 | | -- [Passo 1: Configure Seu Ambiente de Desenvolvimento](../../../02-SetupDevEnvironment) |
27 | | - - [Opção A: GitHub Codespaces (Recomendado)](../../../02-SetupDevEnvironment) |
28 | | - - [Opção B: Contêiner Local de Desenvolvimento](../../../02-SetupDevEnvironment) |
29 | | - - [Opção C: Use Sua Instalação Local Existente](../../../02-SetupDevEnvironment) |
30 | | -- [Passo 2: Crie um Token de Acesso Pessoal do GitHub](../../../02-SetupDevEnvironment) |
31 | | -- [Passo 3: Teste Sua Configuração](../../../02-SetupDevEnvironment) |
32 | | -- [Solução de Problemas](../../../02-SetupDevEnvironment) |
33 | | -- [Resumo](../../../02-SetupDevEnvironment) |
34 | | -- [Próximos Passos](../../../02-SetupDevEnvironment) |
35 | | - |
36 | | -## Introdução |
37 | | - |
38 | | -Este capítulo irá guiá-lo na configuração de um ambiente de desenvolvimento. Usaremos **Modelos do GitHub** como nosso exemplo principal porque é gratuito, fácil de configurar com apenas uma conta do GitHub, não exige cartão de crédito e oferece acesso a vários modelos para experimentação. |
39 | | - |
40 | | -**Sem necessidade de configuração local!** Você pode começar a codificar imediatamente usando o GitHub Codespaces, que fornece um ambiente de desenvolvimento completo no seu navegador. |
41 | | - |
42 | | -<img src="./images/models.webp" alt="Captura de tela: Modelos do GitHub" width="50%"> |
43 | | - |
44 | | -Recomendamos usar [**Modelos do GitHub**](https://github.com/marketplace?type=models) para este curso porque: |
45 | | -- É **gratuito** para começar |
46 | | -- É **fácil** de configurar com apenas uma conta do GitHub |
47 | | -- **Não exige cartão de crédito** |
48 | | -- **Vários modelos** disponíveis para experimentação |
49 | | - |
50 | | -> **Nota**: Os Modelos do GitHub usados neste treinamento possuem os seguintes limites gratuitos: |
51 | | -> - 15 solicitações por minuto (150 por dia) |
52 | | -> - ~8.000 palavras de entrada, ~4.000 palavras de saída por solicitação |
53 | | -> - 5 solicitações simultâneas |
54 | | -> |
55 | | -> Para uso em produção, atualize para Modelos do Azure AI Foundry com sua conta Azure. Seu código não precisa mudar. Veja a [documentação do Azure AI Foundry](https://learn.microsoft.com/azure/ai-foundry/foundry-models/how-to/quickstart-github-models). |
56 | | -
|
57 | | -## Passo 1: Configure Seu Ambiente de Desenvolvimento |
58 | | - |
59 | | -<a name="quick-start-cloud"></a> |
60 | | - |
61 | | -Criamos um contêiner de desenvolvimento pré-configurado para minimizar o tempo de configuração e garantir que você tenha todas as ferramentas necessárias para este curso de IA Generativa em Java. Escolha sua abordagem de desenvolvimento preferida: |
62 | | - |
63 | | -### Opções de Configuração de Ambiente: |
64 | | - |
65 | | -#### Opção A: GitHub Codespaces (Recomendado) |
66 | | - |
67 | | -**Comece a codificar em 2 minutos - sem necessidade de configuração local!** |
68 | | - |
69 | | -1. Faça um fork deste repositório para sua conta do GitHub |
70 | | - > **Nota**: Se você quiser editar a configuração básica, veja a [Configuração do Contêiner de Desenvolvimento](../../../.devcontainer/devcontainer.json) |
71 | | -2. Clique em **Code** → aba **Codespaces** → **...** → **New with options...** |
72 | | -3. Use os padrões – isso selecionará a **Configuração do Contêiner de Desenvolvimento**: **Ambiente de Desenvolvimento Java para IA Generativa** criado para este curso |
73 | | -4. Clique em **Create codespace** |
74 | | -5. Aguarde ~2 minutos para o ambiente estar pronto |
75 | | -6. Prossiga para [Passo 2: Crie um Token do GitHub](../../../02-SetupDevEnvironment) |
76 | | - |
77 | | -<img src="./images/codespaces.png" alt="Captura de tela: submenu Codespaces" width="50%"> |
78 | | - |
79 | | -<img src="./images/image.png" alt="Captura de tela: Novo com opções" width="50%"> |
80 | | - |
81 | | -<img src="./images/codespaces-create.png" alt="Captura de tela: opções de criação de codespace" width="50%"> |
82 | | - |
83 | | -> **Benefícios do Codespaces**: |
84 | | -> - Sem necessidade de instalação local |
85 | | -> - Funciona em qualquer dispositivo com um navegador |
86 | | -> - Pré-configurado com todas as ferramentas e dependências |
87 | | -> - 60 horas gratuitas por mês para contas pessoais |
88 | | -> - Ambiente consistente para todos os alunos |
89 | | -
|
90 | | -#### Opção B: Contêiner Local de Desenvolvimento |
91 | | - |
92 | | -**Para desenvolvedores que preferem desenvolvimento local com Docker** |
93 | | - |
94 | | -1. Faça um fork e clone este repositório para sua máquina local |
95 | | - > **Nota**: Se você quiser editar a configuração básica, veja a [Configuração do Contêiner de Desenvolvimento](../../../.devcontainer/devcontainer.json) |
96 | | -2. Instale [Docker Desktop](https://www.docker.com/products/docker-desktop/) e [VS Code](https://code.visualstudio.com/) |
97 | | -3. Instale a extensão [Dev Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) no VS Code |
98 | | -4. Abra a pasta do repositório no VS Code |
99 | | -5. Quando solicitado, clique em **Reopen in Container** (ou use `Ctrl+Shift+P` → "Dev Containers: Reopen in Container") |
100 | | -6. Aguarde o contêiner ser construído e iniciado |
101 | | -7. Prossiga para [Passo 2: Crie um Token do GitHub](../../../02-SetupDevEnvironment) |
102 | | - |
103 | | -<img src="./images/devcontainer.png" alt="Captura de tela: configuração do contêiner de desenvolvimento" width="50%"> |
104 | | - |
105 | | -<img src="./images/image-3.png" alt="Captura de tela: contêiner de desenvolvimento concluído" width="50%"> |
106 | | - |
107 | | -#### Opção C: Use Sua Instalação Local Existente |
108 | | - |
109 | | -**Para desenvolvedores com ambientes Java existentes** |
110 | | - |
111 | | -Pré-requisitos: |
112 | | -- [Java 21+](https://www.oracle.com/java/technologies/javase/jdk21-archive-downloads.html) |
113 | | -- [Maven 3.9+](https://maven.apache.org/download.cgi) |
114 | | -- [VS Code](https://code.visualstudio.com) ou seu IDE preferido |
115 | | - |
116 | | -Etapas: |
117 | | -1. Clone este repositório para sua máquina local |
118 | | -2. Abra o projeto no seu IDE |
119 | | -3. Prossiga para [Passo 2: Crie um Token do GitHub](../../../02-SetupDevEnvironment) |
120 | | - |
121 | | -> **Dica Pro**: Se você tem uma máquina com especificações baixas, mas quer usar o VS Code localmente, utilize o GitHub Codespaces! Você pode conectar seu VS Code local a um Codespace hospedado na nuvem para o melhor dos dois mundos. |
122 | | -
|
123 | | -<img src="./images/image-2.png" alt="Captura de tela: instância local do contêiner de desenvolvimento criada" width="50%"> |
124 | | - |
125 | | -## Passo 2: Crie um Token de Acesso Pessoal do GitHub |
126 | | - |
127 | | -1. Navegue até [Configurações do GitHub](https://github.com/settings/profile) e selecione **Settings** no menu do seu perfil. |
128 | | -2. Na barra lateral esquerda, clique em **Developer settings** (geralmente no final). |
129 | | -3. Em **Personal access tokens**, clique em **Fine-grained tokens** (ou siga este [link direto](https://github.com/settings/personal-access-tokens)). |
130 | | -4. Clique em **Generate new token**. |
131 | | -5. Em "Token name", forneça um nome descritivo (ex.: `Token-Curso-GenAI-Java`). |
132 | | -6. Defina uma data de expiração (recomendado: 7 dias para melhores práticas de segurança). |
133 | | -7. Em "Resource owner", selecione sua conta de usuário. |
134 | | -8. Em "Repository access", selecione os repositórios que você deseja usar com os Modelos do GitHub (ou "All repositories", se necessário). |
135 | | -9. Em "Repository permissions", encontre **Models** e defina como **Read and write**. |
136 | | -10. Clique em **Generate token**. |
137 | | -11. **Copie e salve seu token agora** – você não poderá vê-lo novamente! |
138 | | - |
139 | | -> **Dica de Segurança**: Use o escopo mínimo necessário e o menor tempo de expiração prático para seus tokens de acesso. |
140 | | -
|
141 | | -## Passo 3: Teste Sua Configuração com o Exemplo dos Modelos do GitHub |
142 | | - |
143 | | -Depois que seu ambiente de desenvolvimento estiver pronto, vamos testar a integração com os Modelos do GitHub usando nosso aplicativo de exemplo em [`02-SetupDevEnvironment/examples/github-models`](../../../02-SetupDevEnvironment/examples/github-models). |
144 | | - |
145 | | -1. Abra o terminal no seu ambiente de desenvolvimento. |
146 | | -2. Navegue até o exemplo dos Modelos do GitHub: |
147 | | - ```bash |
148 | | - cd 02-SetupDevEnvironment/examples/github-models |
149 | | - ``` |
150 | | -3. Defina seu token do GitHub como uma variável de ambiente: |
151 | | - ```bash |
152 | | - # macOS/Linux |
153 | | - export GITHUB_TOKEN=your_token_here |
154 | | - |
155 | | - # Windows (Command Prompt) |
156 | | - set GITHUB_TOKEN=your_token_here |
157 | | - |
158 | | - # Windows (PowerShell) |
159 | | - $env:GITHUB_TOKEN="your_token_here" |
160 | | - ``` |
161 | | - |
162 | | -4. Execute o aplicativo: |
163 | | - ```bash |
164 | | - mvn compile exec:java -Dexec.mainClass="com.example.githubmodels.App" |
165 | | - ``` |
166 | | - |
167 | | -Você deverá ver uma saída semelhante a: |
168 | | -```text |
169 | | -Using model: gpt-4.1-nano |
170 | | -Sending request to GitHub Models... |
171 | | -Response: Hello World! |
172 | | -``` |
173 | | - |
174 | | -### Entendendo o Código de Exemplo |
175 | | - |
176 | | -Primeiro, vamos entender o que acabamos de executar. O exemplo em `examples/github-models` utiliza o SDK Java do OpenAI para conectar-se aos Modelos do GitHub: |
177 | | - |
178 | | -**O que este código faz:** |
179 | | -- **Conecta-se** aos Modelos do GitHub usando seu token de acesso pessoal |
180 | | -- **Envia** uma mensagem simples "Say Hello World!" para o modelo de IA |
181 | | -- **Recebe** e exibe a resposta da IA |
182 | | -- **Valida** que sua configuração está funcionando corretamente |
183 | | - |
184 | | -**Dependência Principal** (em `pom.xml`): |
185 | | -```xml |
186 | | -<dependency> |
187 | | - <groupId>com.openai</groupId> |
188 | | - <artifactId>openai-java</artifactId> |
189 | | - <version>2.12.0</version> |
190 | | -</dependency> |
191 | | -``` |
192 | | - |
193 | | -**Código Principal** (`App.java`): |
194 | | -```java |
195 | | -// Connect to GitHub Models using OpenAI Java SDK |
196 | | -OpenAIClient client = OpenAIOkHttpClient.builder() |
197 | | - .apiKey(pat) |
198 | | - .baseUrl("https://models.inference.ai.azure.com") |
199 | | - .build(); |
200 | | - |
201 | | -// Create chat completion request |
202 | | -ChatCompletionCreateParams params = ChatCompletionCreateParams.builder() |
203 | | - .model(modelId) |
204 | | - .addSystemMessage("You are a concise assistant.") |
205 | | - .addUserMessage("Say Hello World!") |
206 | | - .build(); |
207 | | - |
208 | | -// Get AI response |
209 | | -ChatCompletion response = client.chat().completions().create(params); |
210 | | -System.out.println("Response: " + response.choices().get(0).message().content().orElse("No response content")); |
211 | | -``` |
212 | | - |
213 | | -## Resumo |
214 | | - |
215 | | -Ótimo! Agora você tem tudo configurado: |
216 | | - |
217 | | -- Criou um Token de Acesso Pessoal do GitHub com as permissões corretas para acesso aos modelos de IA |
218 | | -- Configurou seu ambiente de desenvolvimento Java (seja Codespaces, contêineres de desenvolvimento ou local) |
219 | | -- Conectou-se aos Modelos do GitHub usando o SDK Java do OpenAI para desenvolvimento de IA gratuito |
220 | | -- Testou tudo com um exemplo simples que conversa com modelos de IA |
221 | | - |
222 | | -## Próximos Passos |
223 | | - |
224 | | -[Capítulo 3: Técnicas Fundamentais de IA Generativa](../03-CoreGenerativeAITechniques/README.md) |
225 | | - |
226 | | -## Solução de Problemas |
227 | | - |
228 | | -Está enfrentando problemas? Aqui estão problemas comuns e soluções: |
229 | | - |
230 | | -- **Token não funciona?** |
231 | | - - Certifique-se de copiar o token inteiro sem espaços extras |
232 | | - - Verifique se o token está configurado corretamente como uma variável de ambiente |
233 | | - - Confirme que seu token tem as permissões corretas (Models: Read and write) |
234 | | - |
235 | | -- **Maven não encontrado?** |
236 | | - - Se estiver usando contêineres de desenvolvimento/Codespaces, o Maven deve estar pré-instalado |
237 | | - - Para configuração local, certifique-se de que Java 21+ e Maven 3.9+ estão instalados |
238 | | - - Tente `mvn --version` para verificar a instalação |
239 | | - |
240 | | -- **Problemas de conexão?** |
241 | | - - Verifique sua conexão com a internet |
242 | | - - Confirme que o GitHub está acessível na sua rede |
243 | | - - Certifique-se de que não está atrás de um firewall bloqueando o endpoint dos Modelos do GitHub |
244 | | - |
245 | | -- **Contêiner de desenvolvimento não inicia?** |
246 | | - - Certifique-se de que o Docker Desktop está em execução (para desenvolvimento local) |
247 | | - - Tente reconstruir o contêiner: `Ctrl+Shift+P` → "Dev Containers: Rebuild Container" |
248 | | - |
249 | | -- **Erros de compilação do aplicativo?** |
250 | | - - Certifique-se de estar no diretório correto: `02-SetupDevEnvironment/examples/github-models` |
251 | | - - Tente limpar e reconstruir: `mvn clean compile` |
252 | | - |
253 | | -> **Precisa de ajuda?**: Ainda enfrentando problemas? Abra uma issue no repositório e nós ajudaremos você. |
254 | | -
|
255 | | -**Aviso Legal**: |
256 | | -Este documento foi traduzido utilizando o serviço de tradução por IA [Co-op Translator](https://github.com/Azure/co-op-translator). Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte oficial. Para informações críticas, recomenda-se a tradução profissional feita por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações equivocadas decorrentes do uso desta tradução. |
0 commit comments