Hugging Face Hub adalah sebuah platform dengan lebih dari 120.000 model, 20.000 set data, dan 50.000 aplikasi demo (Spaces), yang semuanya bersifat open source dan tersedia untuk umum. Di platform online ini, orang-orang dapat dengan mudah berkolaborasi dan membangun machine learning bersama-sama.
Hugging Face Hub juga menyediakan berbagai titik akhir untuk membangun aplikasi ML yang berbeda. Contoh ini menunjukkan cara menghubungkan ke berbagai jenis endpoint.
Secara khusus, ini didukung oleh Inferensi Pembuatan Teks. Ini adalah server Rust, Python, dan gRPC yang dibuat khusus untuk inferensi pembuatan teks yang sangat cepat.
Mengeluarkan token HuggingFace
Mendaftar ke Huggingface (https://huggingface.co) dan ajukan permohonan penerbitan token di alamat di bawah ini.
from langchain.prompts import PromptTemplatetemplate ="""<|system|>Anda adalah asisten yang sangat membantu.<|end|><|user|>{<|pertanyaan|> <|akhir|><|asisten|> """prompt = PromptTemplate.from_template(template)
Serverless Endpoints
API Inference gratis untuk digunakan dan memiliki harga terbatas. Jika Anda membutuhkan solusi inferensi untuk produksi, lihat layanan Inference Endpoints. Dengan Inference Endpoints, Anda dapat dengan mudah menerapkan model pembelajaran mesin apa pun pada infrastruktur khusus dan terkelola sepenuhnya. Pilih cloud, wilayah, instance komputasi, cakupan penskalaan otomatis, dan tingkat keamanan yang sesuai dengan model, latensi, throughput, dan persyaratan kepatuhan Anda.
Berikut ini contoh cara mengakses Inference API.
Catatan
Serverless Endpoints
Inference Endpoints
Tetapkan repo ID (ID repositori) model HuggingFace Anda ke variabel repo_id.
import osfrom langchain_core.output_parsers import StrOutputParserfrom langchain_huggingface import HuggingFaceEndpoint# Tetapkan ID repo model yang akan digunakan.repo_id ="microsoft/Phi-3-mini-4k-instruct"llm =HuggingFaceEndpoint( repo_id = repo_id, # Tentukan ID repositori model. max_new_tokens =256, # Tetapkan panjang token maksimum yang akan dihasilkan. temperature =0.1, huggingfacehub_api_token = os.environ["HUGGINGFACEHUB_API_TOKEN"], # Token HuggingFace)# Inisialisasi LLMChain dan berikan prompt dan model bahasa.chain = prompt | llm |StrOutputParser()# Jalankan LLMChain dengan mengoper sebuah pertanyaan dan keluarkan hasilnya.response = chain.invoke({"pertanyaan": "apa ibu kota Indonesia?"})print(response)
The token has not been saved to the git credentials helper. Pass `add_to_git_credential=True` in this function directly or `--add-to-git-credential` if using via `huggingface-cli` if you want to set the git credential as well.
Token is valid (permission: write).
Your token has been saved to /Users/mini16gboffice1/.cache/huggingface/token
Login successful
The capital of Indonesia is Jakarta. Jakarta is the largest city in Indonesia and serves as the country's economic, cultural, and political center. It is located on the northwest coast of the world's most populous island, Java. Jakarta has a rich history that dates back to the 4th century, and it has been the capital of Indonesia since the country's independence in 1945.
print(response)
The capital of Indonesia is Jakarta. Jakarta is the largest city in Indonesia and serves as the country's economic, cultural, and political center. It is located on the northwest coast of the world's most populous island, Java. Jakarta has a rich history that dates back to the 4th century, and it has been the capital of Indonesia since the country's independence in 1945.
Dedicated Endpoint
API tanpa server gratis memungkinkan Anda mengimplementasikan dan mengulang solusi dengan cepat. Namun, karena beban dibagi dengan permintaan lain, mungkin ada batasan kecepatan untuk kasus penggunaan bervolume tinggi.
Untuk beban kerja perusahaan, sebaiknya gunakan Inference Endpoints - Dedicated, yang memberi Anda akses ke infrastruktur yang dikelola sepenuhnya yang menawarkan fleksibilitas dan kecepatan yang lebih tinggi.
Sumber daya ini mencakup dukungan berkelanjutan dan jaminan waktu aktif, serta opsi seperti Penskalaan Otomatis.
Atur URL Inference endpoint dalam variabel hf_endpoint_url.
llm =HuggingFaceEndpoint(# Tetapkan URL endpoint. endpoint_url = hf_endpoint_url, max_new_token =512, suhu =0.01,)# Jalankan model untuk prompt yang diberikan.llm.invoke(input="Apa ibu kota Indonesia?")
from langchain_core.prompts import ChatPromptTemplatefrom langchain_core.output_parsers import StrOutputParserfrom langchain_teddynote.messages import stream_response# A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.
# Human: {prompt}# Assistant:prompt = ChatPromptTemplate.from_messages( [ ("system", "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.",
), ("user", "Human: {question}\nAssistant: "), ])chain = prompt | llm |StrOutputParser()