Obrigatório: Node.js 18 ou posterior.
A demonstração a seguir pode ser executada usando GPT da OpenAI ou um LLM local.
Método #1 : Para acessar a API do OpenAI, você precisa de uma chave de API do OpenAI que é armazenada em uma variável de ambiente chamada OPENAI_API_KEY
. Leia como gerar uma chave de API e não se esqueça de usá-la com segurança!
Método #2 : Execute LocalAI primeiro e pegue um modelo adequado, por exemplo LLama 2 7B, no formato GGML. Em seguida, defina as duas variáveis de ambiente OPENAI_API_BASE
para se referir ao endereço do servidor LocalAI e CHAT_MODEL
para selecionar o nome do modelo a ser usado.
$ curl -OL https://github.com/go-skynet/LocalAI/releases/download/v1.23.2/local-ai-avx-Linux-x86_64
$ chmod +x ./local-ai-avx-Linux-x86_64
$ curl -OL https://huggingface.co/TheBloke/Llama-2-7B-Chat-GGML/resolve/main/llama-2-7b-chat.ggmlv3.q4_0.bin
$ mv llama-2-7b-chat.ggmlv3.q4_0.bin models/
$ ./local-ai-avx-Linux-x86_64
$ export CHAT_MODEL= ' llama-2-7b-chat.ggmlv3.q4_0.bin '
$ export OPENAI_API_BASE= ' http://127.0.0.1:8080 '
Exemplo de execução de uma demonstração para completar uma frase ( completion ):
$ node complete.js "Sukarno dan Hatta pada tahun 1945"
Exemplo de execução de uma demonstração para perguntar:
$ node ask.js "Berapa jumlah penduduk Bandung?"
Exemplo de execução de uma demonstração para encontrar informações detalhadas:
$ node query.js "Berapa koordinat geografis dari Bandung?"
diagrama de sequência
Cliente participante
Participante do LLM
Geocodificador participante
Cliente->>+LLM: "Quais são as coordenadas geográficas de Bandung?"
LLM-->>+Geocodificador: geocódigo("Bandung")
Geocodificador-->>+LLM: {"lat":-6,9,"long":107,6}
LLM->>+Cliente: "Bandung está na latitude -6,9 e longitude 107,6."
$ node query.js "Bagaimana suhu di ibukota Jawa Timur?"
diagrama de sequência
Cliente participante
Participante do LLM
Geocodificador participante
participante WeatherStation
Cliente->>+LLM: "Como está a temperatura na capital de Java Oriental?"
Nota à direita do LLM: capital de East Java = Surabaya
LLM-->>+Geocodificador: geocódigo("Surabaya")
Geocodificador-->>+LLM: {"lat":-7,3,"long":112,7}
LLM-->>+ Estação Meteorológica: Estação Meteorológica (-7,3, 112,7)
Estação Meteorológica-->>+LLM: {"main": {"temp": 27}}
LLM->>+Cliente: "A temperatura em Surabaya está em torno de 27°C"
A versão demo do Clojure pode ser executada diretamente através do terminal conforme mostrado abaixo, mas é melhor entendê-la e experimentá-la usando o REPL (por exemplo com Visual Studio Code + Calva ou Vim/NeoVim + plugin vim-iced).
Primeiro, certifique-se de que os módulos necessários estejam instalados:
$ npm install
Exemplo de execução de uma demonstração para completar uma frase ( completion ):
$ npm run nbb complete.cljs "Ibukota Indonesia adalah"
Exemplo de execução de uma demonstração para perguntar:
$ npm run nbb ask.cljs "Apa ibukota Jawa Timur?"
Exemplo de execução de uma demonstração para encontrar informações detalhadas:
$ npm run nbb probe.cljs "Kapan saya terakhir ke Bandung?"