Skip to content

Latest commit

 

History

History
145 lines (100 loc) · 11.5 KB

File metadata and controls

145 lines (100 loc) · 11.5 KB

Postavite svoj razvojni okoliš

Postavili smo ovaj repozitorij i tečaj s razvojnim kontejnerom koji ima univerzalni runtime koji može podržavati razvoj za Python3, .NET, Node.js i Java. Srodna konfiguracija definirana je u datoteci devcontainer.json koja se nalazi u mapi .devcontainer/ na korijenu ovog repozitorija.

Da biste aktivirali razvojni kontejner, pokrenite ga u GitHub Codespaces (za runtime u oblaku) ili u Docker Desktop (za lokalni runtime). Pročitajte ovu dokumentaciju za više detalja o tome kako razvojni kontejneri rade unutar VS Code.

Tip

Preporučujemo korištenje GitHub Codespaces za brz početak s minimalnim naporom. Pruža velikodušnu kvotu za besplatno korištenje za osobne račune. Konfigurirajte vrijeme neaktivnosti kako biste zaustavili ili izbrisali neaktivne codespaces i maksimalno iskoristili svoju kvotu.

1. Izvršavanje zadataka

Svaka lekcija će imati neobavezne zadatke koji mogu biti dostupni u jednom ili više programskih jezika uključujući: Python, .NET/C#, Java i JavaScript/TypeScript. Ovaj odjeljak pruža opće smjernice vezane uz izvršavanje tih zadataka.

1.1 Python zadaci

Python zadaci se pružaju ili kao aplikacije (datoteke .py) ili Jupyter bilježnice (datoteke .ipynb).

  • Da biste pokrenuli bilježnicu, otvorite je u Visual Studio Code, zatim kliknite Select Kernel (gore desno) i odaberite zadanu opciju Python 3. Sada možete Run All za izvršavanje bilježnice.
  • Da biste pokrenuli Python aplikacije s komandne linije, slijedite specifične upute za zadatak kako biste bili sigurni da ste odabrali prave datoteke i dali potrebne argumente.

2. Konfiguriranje pružatelja usluga

Zadaci mogu biti postavljeni za rad protiv jedne ili više implementacija velikih jezičnih modela (LLM) putem podržanog pružatelja usluga poput OpenAI, Azure ili Hugging Face. Oni pružaju hostirani endpoint (API) kojem možemo pristupiti programatski s ispravnim vjerodajnicama (API ključ ili token). U ovom tečaju raspravljamo o ovim pružateljima:

  • OpenAI s raznim modelima uključujući osnovnu seriju GPT.
  • Azure OpenAI za OpenAI modele s fokusom na spremnost za poduzeća.
  • Hugging Face za open-source modele i server za inferenciju.

Morat ćete koristiti svoje račune za ove vježbe. Zadatci su neobavezni pa možete odlučiti postaviti jednog, sve - ili nijednog - od pružatelja usluga ovisno o vašim interesima. Neke smjernice za prijavu:

Prijava Trošak API ključ Igralište Komentari
OpenAI Cijene Projekt-bazirano Bez koda, Web Dostupni višestruki modeli
Azure Cijene SDK Quickstart Studio Quickstart Morate unaprijed aplicirati za pristup
Hugging Face Cijene Pristupni tokeni Hugging Chat Hugging Chat ima ograničene modele

Slijedite dolje navedene upute za konfiguriranje ovog repozitorija za korištenje s različitim pružateljima usluga. Zadatci koji zahtijevaju određenog pružatelja usluga će sadržavati jednu od ovih oznaka u svom nazivu datoteke:

  • aoai - zahtijeva Azure OpenAI endpoint, ključ
  • oai - zahtijeva OpenAI endpoint, ključ
  • hf - zahtijeva Hugging Face token

Možete konfigurirati jednog, nijednog ili sve pružatelje usluga. Srodni zadatci će jednostavno prijaviti grešku na nedostajuće vjerodajnice.

2.1. Kreirajte datoteku .env

Pretpostavljamo da ste već pročitali gore navedene smjernice i prijavili se kod relevantnog pružatelja usluga te dobili potrebne vjerodajnice za autentifikaciju (API_KEY ili token). U slučaju Azure OpenAI, pretpostavljamo da također imate valjanu implementaciju Azure OpenAI usluge (endpoint) s barem jednim GPT modelom implementiranim za završetak razgovora.

Sljedeći korak je konfiguriranje vaših lokalnih varijabli okruženja na sljedeći način:

  1. Pogledajte u korijensku mapu za datoteku .env.copy koja bi trebala imati sadržaj poput ovog:

    # OpenAI Provider
    OPENAI_API_KEY='<add your OpenAI API key here>'
    
    ## Azure OpenAI
    AZURE_OPENAI_API_VERSION='2024-02-01' # Default is set!
    AZURE_OPENAI_API_KEY='<add your AOAI key here>'
    AZURE_OPENAI_ENDPOINT='<add your AOIA service endpoint here>'
    AZURE_OPENAI_DEPLOYMENT='<add your chat completion model name here>' 
    AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='<add your embeddings model name here>'
    
    ## Hugging Face
    HUGGING_FACE_API_KEY='<add your HuggingFace API or token here>'
  2. Kopirajte tu datoteku u .env koristeći naredbu ispod. Ova datoteka je gitignore-d, čuvajući tajne sigurno.

    cp .env.copy .env
  3. Popunite vrijednosti (zamijenite rezervirane oznake na desnoj strani =) kako je opisano u sljedećem odjeljku.

  4. (Opcija) Ako koristite GitHub Codespaces, imate opciju spremanja varijabli okruženja kao Codespaces tajni povezane s ovim repozitorijem. U tom slučaju, nećete trebati postaviti lokalnu .env datoteku. Međutim, imajte na umu da ova opcija radi samo ako koristite GitHub Codespaces. I dalje ćete morati postaviti .env datoteku ako koristite Docker Desktop umjesto toga.

2.2. Popunite datoteku .env

Pogledajmo brzo nazive varijabli da bismo razumjeli što predstavljaju:

Varijabla Opis
HUGGING_FACE_API_KEY Ovo je korisnički pristupni token koji ste postavili u svom profilu
OPENAI_API_KEY Ovo je autorizacijski ključ za korištenje usluge za ne-Azure OpenAI endpoint
AZURE_OPENAI_API_KEY Ovo je autorizacijski ključ za korištenje te usluge
AZURE_OPENAI_ENDPOINT Ovo je implementirani endpoint za Azure OpenAI resurs
AZURE_OPENAI_DEPLOYMENT Ovo je endpoint za generiranje teksta modela implementacije
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT Ovo je endpoint za ugrađivanje teksta modela implementacije

Napomena: Posljednje dvije Azure OpenAI varijable odražavaju zadani model za završetak razgovora (generiranje teksta) i pretraživanje vektora (ugrađivanje) respektivno. Upute za njihovo postavljanje bit će definirane u relevantnim zadacima.

2.3 Konfigurirajte Azure: Iz portala

Vrijednosti za Azure OpenAI endpoint i ključ će se pronaći u Azure portalu pa krenimo od tamo.

  1. Idite na Azure portal
  2. Kliknite opciju Keys and Endpoint u bočnom izborniku (izbornik lijevo).
  3. Kliknite Show Keys - trebali biste vidjeti sljedeće: KLJUČ 1, KLJUČ 2 i Endpoint.
  4. Koristite vrijednost KLJUČA 1 za AZURE_OPENAI_API_KEY
  5. Koristite vrijednost Endpoint za AZURE_OPENAI_ENDPOINT

Sljedeće, trebamo endpoint za specifične modele koje smo implementirali.

  1. Kliknite opciju Model deployments u bočnom izborniku (izbornik lijevo) za Azure OpenAI resurs.
  2. Na odredišnoj stranici kliknite Manage Deployments

Ovo će vas odvesti na web stranicu Azure OpenAI Studio, gdje ćemo pronaći ostale vrijednosti kako je opisano dolje.

2.4 Konfigurirajte Azure: Iz studija

  1. Navigirajte do Azure OpenAI Studio iz vašeg resursa kako je opisano gore.
  2. Kliknite karticu Deployments (bočni izbornik, lijevo) za pregled trenutno implementiranih modela.
  3. Ako vaš željeni model nije implementiran, koristite Create new deployment za implementaciju.
  4. Trebat će vam model za generiranje teksta - preporučujemo: gpt-35-turbo
  5. Trebat će vam model za ugrađivanje teksta - preporučujemo text-embedding-ada-002

Sada ažurirajte varijable okruženja kako bi odražavale Ime implementacije koje ste koristili. Ovo će obično biti isto kao ime modela osim ako ste ga eksplicitno promijenili. Dakle, kao primjer, mogli biste imati:

AZURE_OPENAI_DEPLOYMENT='gpt-35-turbo'
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='text-embedding-ada-002'

Ne zaboravite spremiti .env datoteku kad završite. Sada možete izaći iz datoteke i vratiti se na upute za pokretanje bilježnice.

2.5 Konfigurirajte OpenAI: Iz profila

Vaš OpenAI API ključ možete pronaći u svom OpenAI računu. Ako ga nemate, možete se prijaviti za račun i kreirati API ključ. Kada imate ključ, možete ga koristiti za popunjavanje varijable OPENAI_API_KEY u datoteci .env.

2.6 Konfigurirajte Hugging Face: Iz profila

Vaš Hugging Face token možete pronaći u svom profilu pod Pristupni tokeni. Nemojte ih objavljivati ili dijeliti javno. Umjesto toga, kreirajte novi token za ovu upotrebu projekta i kopirajte ga u datoteku .env pod varijablom HUGGING_FACE_API_KEY. Napomena: Tehnički, ovo nije API ključ, ali se koristi za autentifikaciju pa zadržavamo tu konvenciju imenovanja radi dosljednosti.

Odricanje odgovornosti:
Ovaj dokument je preveden pomoću AI usluge za prevođenje Co-op Translator. Iako težimo za točnost, imajte na umu da automatski prijevodi mogu sadržavati pogreške ili netočnosti. Izvorni dokument na izvornom jeziku treba smatrati autoritativnim izvorom. Za kritične informacije preporučuje se profesionalni prijevod od strane čovjeka. Ne odgovaramo za nesporazume ili pogrešna tumačenja koja proizlaze iz korištenja ovog prijevoda.