Hub Python Library documentation
Inferensi
Inferensi
Inference adalah proses menggunakan model terlatih untuk membuat prediksi pada data baru. Karena proses ini dapat membutuhkan banyak komputasi, menjalankannya pada layanan khusus atau eksternal dapat menjadi opsi yang menarik.
Perpustakaan huggingface_hub menyediakan antarmuka terpadu untuk menjalankan inference di berbagai layanan untuk model yang dihosting di Hugging Face Hub:
- Inference Providers: akses yang terpadu dan efisien ke ratusan model machine learning, didukung oleh mitra inferensi serverless kami. Pendekatan baru ini dibangun di atas Serverless Inference API kami sebelumnya, menawarkan lebih banyak model, kinerja yang lebih baik, dan keandalan yang lebih tinggi berkat penyedia kelas dunia. Lihat dokumentasi untuk daftar penyedia yang didukung.
- Inference Endpoints: produk untuk dengan mudah mendeploy model ke produksi. Inferensi dijalankan oleh Hugging Face di infrastruktur khusus yang sepenuhnya dikelola pada penyedia cloud pilihan Anda.
- Endpoint lokal: Anda juga dapat menjalankan inferensi dengan server inferensi lokal seperti llama.cpp, Ollama, vLLM, LiteLLM, atau Text Generation Inference (TGI) dengan menghubungkan klien ke endpoint lokal ini.
Layanan ini dapat dipanggil dengan objek InferenceClient. Silakan lihat panduan ini untuk informasi lebih lanjut tentang cara menggunakannya.
Klien Inferensi
kelas huggingface_hub.InferenceClient
< source >( model: str | None = Noneprovider: typing.Union[typing.Literal['baseten', 'cerebras', 'cohere', 'deepinfra', 'fal-ai', 'featherless-ai', 'fireworks-ai', 'groq', 'hf-inference', 'novita', 'nscale', 'openai', 'ovhcloud', 'publicai', 'replicate', 'scaleway', 'together', 'wavespeed', 'zai-org'], typing.Literal['auto'], NoneType] = Nonetoken: str | None = Nonetimeout: float | None = Noneheaders: dict[str, str] | None = Nonecookies: dict[str, str] | None = Nonebill_to: str | None = Nonebase_url: str | None = Noneapi_key: str | None = None )
Parameter
- model (
str,optional) — Model yang akan digunakan untuk menjalankan inferensi. Bisa berupa id model yang dihosting di Hugging Face Hub, misalnyameta-llama/Meta-Llama-3-8B-Instructatau URL ke Inference Endpoint yang telah di-deploy. Defaultnya None, di mana model yang direkomendasikan akan dipilih secara otomatis untuk tugas tersebut. Catatan: untuk kompatibilitas yang lebih baik dengan klien OpenAI,modeltelah di-alias sebagaibase_url. Kedua argumen ini saling eksklusif. Jika URL diteruskan sebagaimodelataubase_urluntuk chat completion, suffix path(/v1)/chat/completionsakan ditambahkan ke URL tersebut. - provider (
str, opsional) — Nama provider yang akan digunakan untuk inferensi. Bisa berupa"baseten","cerebras","cohere","deepinfra","fal-ai","featherless-ai","fireworks-ai","groq","hf-inference","novita","nscale","openai","ovhcloud","publicai","replicate","scaleway","together","wavespeed"atau"zai-org". Nilai defaultnya adalah “auto”: perutean otomatis, yang secara default memilih provider “fastest”; Anda dapat mengubah urutan provider menjadi “cheapest” atau “preferred” di https://hf.co/settings/inference-providers. Jika model berupa URL ataubase_urldiberikan, makaprovidertidak digunakan. - token (
str, opsional) — Token Hugging Face. Akan menggunakan token yang disimpan secara lokal jika tidak diberikan. Catatan: untuk kompatibilitas yang lebih baik dengan klien OpenAI,tokentelah diberi alias sebagaiapi_key. Kedua argumen ini saling eksklusif dan memiliki perilaku yang persis sama. - timeout (
float,optional) — Jumlah detik maksimum untuk menunggu respons dari server. Nilainya secara default None, yang berarti akan terus berulang hingga server tersedia. - headers (
dict[str, str],optional) — Header tambahan untuk dikirim ke server. Secara default, hanya header authorization dan user-agent yang dikirim. Nilai dalam kamus ini akan menimpa nilai default. - bill_to (
str,optional) — Akun penagihan yang akan digunakan untuk permintaan. Secara default, permintaan ditagihkan ke akun pengguna. Permintaan hanya dapat ditagihkan ke organisasi yang menjadi anggota pengguna dan yang telah berlangganan Enterprise Hub. - cookies (
dict[str, str],optional) — Cookie tambahan untuk dikirim ke server. - base_url (
str,optional) — URL dasar untuk menjalankan inferensi. Ini adalah argumen duplikat darimodelagar InferenceClient mengikuti pola yang sama dengan klienopenai.OpenAI. Tidak dapat digunakan jikamodeldisetel. Nilainya default adalah None. - api_key (
str,optional) — Token yang digunakan untuk autentikasi. Ini adalah argumen duplikat daritokenagar InferenceClient mengikuti pola yang sama dengan klienopenai.OpenAI. Tidak dapat digunakan jikatokendisetel. Defaultnya None.
Inisialisasi Inference Client baru.
InferenceClient bertujuan untuk memberikan pengalaman yang terpadu dalam melakukan inferensi. Klien ini dapat digunakan secara mulus dengan Inference API (gratis), Inference Endpoints yang di-host sendiri, atau Inference Providers pihak ketiga.
klasifikasi_audio
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonetop_k: int | None = Nonefunction_to_apply: typing.Optional[ForwardRef('AudioClassificationOutputTransform')] = None ) → list[AudioClassificationOutputElement]
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten audio yang akan diklasifikasikan. Dapat berupa byte audio mentah, file audio lokal, atau URL yang menunjuk ke file audio.
- model (
str, opsional) — Model yang akan digunakan untuk klasifikasi audio. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk klasifikasi audio akan digunakan. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi. - function_to_apply (
"AudioClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor.
Mengembalikan
list[AudioClassificationOutputElement]
Daftar item AudioClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi audio pada konten audio yang disediakan.
audio_to_audio
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = None ) → list[AudioToAudioOutputElement]
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten audio untuk model. Dapat berupa byte audio mentah, file audio lokal, atau URL yang menunjuk ke file audio.
- model (
str, opsional) — Model dapat berupa model apa pun yang menerima file audio dan mengembalikan file audio lain. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model rekomendasi default untuk audio_to_audio akan digunakan.
Mengembalikan
list[AudioToAudioOutputElement]
Daftar item AudioToAudioOutputElement yang berisi label audio, content-type, dan konten audio dalam blob.
Membuang
InferenceTimeoutError atau HfHubHTTPError
InferenceTimeoutError— Jika model tidak tersedia atau permintaan melebihi batas waktu.HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Melakukan beberapa tugas terkait audio-ke-audio tergantung pada model (misalnya: peningkatan ucapan, pemisahan sumber).
automatic_speech_recognition
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Noneextra_body: dict | None = None ) → AutomaticSpeechRecognitionOutput
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten yang akan ditranskripsi. Dapat berupa byte audio mentah, file audio lokal, atau URL ke file audio.
- model (
str, opsional) — Model yang akan digunakan untuk ASR. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk ASR akan digunakan. - extra_body (
dict, opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
Item yang berisi teks transkripsi dan, secara opsional, potongan timestamp.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan pengenalan ucapan otomatis (ASR atau audio-ke-teks) pada konten audio yang diberikan.
chat_completion
< source >( messages: listmodel: str | None = Nonestream: bool = Falsefrequency_penalty: float | None = Nonelogit_bias: list[float] | None = Nonelogprobs: bool | None = Nonemax_tokens: int | None = Nonen: int | None = Nonepresence_penalty: float | None = Noneresponse_format: typing.Union[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatText, huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatJSONSchema, huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatJSONObject, NoneType] = Noneseed: int | None = Nonestop: list[str] | None = Nonestream_options: huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputStreamOptions | None = Nonetemperature: float | None = Nonetool_choice: typing.Union[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputToolChoiceClass, ForwardRef('ChatCompletionInputToolChoiceEnum'), NoneType] = Nonetool_prompt: str | None = Nonetools: list[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputTool] | None = Nonetop_logprobs: int | None = Nonetop_p: float | None = Noneextra_body: dict | None = None ) → ChatCompletionOutput or Iterable of ChatCompletionStreamOutput
Parameter
- messages (List of ChatCompletionInputMessage) — Riwayat percakapan yang terdiri dari pasangan peran dan konten.
- model (
str, opsional) — Model yang akan digunakan untuk chat-completion. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk text-generation berbasis chat akan digunakan. Lihat https://huggingface.co/tasks/text-generation untuk detail lebih lanjut. Jikamodeladalah ID model, nilai tersebut diteruskan ke server sebagai parametermodel. Jika Anda ingin mendefinisikan URL kustom sambil mengaturmodeldi payload permintaan, Anda harus mengaturbase_urlsaat menginisialisasi InferenceClient. - frequency_penalty (
float, opsional) — Memberikan penalti pada token baru berdasarkan frekuensi yang sudah ada dalam teks sejauh ini. Rentang: [-2.0, 2.0]. Bawaan: 0.0. - logit_bias (
list[float], opsional) — Menyesuaikan kemungkinan token tertentu muncul dalam output yang dihasilkan. - logprobs (
bool, opsional) — Apakah akan mengembalikan log probabilitas dari token output atau tidak. Jika true, mengembalikan log probabilitas dari setiap token output yang dikembalikan dalam konten pesan. - max_tokens (
int, opsional) — Jumlah maksimum token yang diizinkan dalam respons. Bawaan adalah 100. - n (
int, opsional) — Jumlah penyelesaian yang akan dihasilkan untuk setiap prompt. - presence_penalty (
float, opsional) — Angka antara -2.0 dan 2.0. Nilai positif memberikan penalti pada token baru berdasarkan apakah token tersebut muncul dalam teks sejauh ini, sehingga meningkatkan kemungkinan model untuk membahas topik baru. - response_format (
ChatCompletionInputGrammarType(), opsional) — Kendala grammar. Bisa berupa JSONSchema atau regex. - seed (Opsional
int, opsional) — Seed untuk alur kontrol yang dapat direproduksi. Bawaan adalah None. - stop (
list[str], opsional) — Hingga empat string yang memicu akhir respons. Nilai defaultnya adalah None. - stream (
bool, opsional) — Aktifkan streaming respons secara real-time. Defaultnya False. - stream_options (ChatCompletionInputStreamOptions, opsional) — Opsi untuk streaming penyelesaian.
- temperature (
float, opsional) — Mengontrol tingkat keacakan dari hasil generasi. Nilai yang lebih rendah memastikan kelengkapan yang kurang acak. Rentang: [0, 2]. Bawaan: 1.0. - top_logprobs (
int, opsional) — Bilangan bulat antara 0 dan 5 yang menentukan jumlah token paling mungkin yang akan dikembalikan pada setiap posisi token, masing-masing dengan log probabilitas terkait. logprobs harus diatur ke true jika parameter ini digunakan. - top_p (
float, opsional) — Fraksi kata-kata berikutnya yang paling mungkin untuk disampelkan. Harus berada di antara 0 dan 1. Bawaan adalah 1.0. - tool_choice (ChatCompletionInputToolChoiceClass atau
ChatCompletionInputToolChoiceEnum(), opsional) — Alat yang akan digunakan untuk penyelesaian. Bawaan adalah “auto”. - tool_prompt (
str, opsional) — Prompt yang akan ditambahkan sebelum tools. - tools (List of ChatCompletionInputTool, opsional) — Daftar tool yang dapat dipanggil oleh model. Saat ini, hanya fungsi yang didukung sebagai tool. Gunakan ini untuk menyediakan daftar fungsi yang dapat menghasilkan input JSON oleh model.
- extra_body (
dict, opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
ChatCompletionOutput atau Iterable dari ChatCompletionStreamOutput
Teks yang dihasilkan yang dikembalikan dari server:
- Jika
stream=False, teks yang dihasilkan dikembalikan sebagai ChatCompletionOutput (default). - Jika
stream=True, teks yang dihasilkan dikembalikan per token sebagai rangkaian ChatCompletionStreamOutput.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Metode untuk menyelesaikan percakapan menggunakan model bahasa yang ditentukan.
Metode
client.chat_completionmemiliki aliasclient.chat.completions.createuntuk kompatibilitas dengan klien OpenAI. Input dan output sama persis, dan penggunaan sintaks mana pun akan menghasilkan hasil yang sama. Lihat Panduan Inferensi untuk detail lebih lanjut tentang kompatibilitas OpenAI.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> messages = [{"role": "user", "content": "What is the capital of France?"}]
>>> client = InferenceClient("meta-llama/Meta-Llama-3-8B-Instruct")
>>> client.chat_completion(messages, max_tokens=100)
ChatCompletionOutput(
choices=[
ChatCompletionOutputComplete(
finish_reason='eos_token',
index=0,
message=ChatCompletionOutputMessage(
role='assistant',
content='The capital of France is Paris.',
name=None,
tool_calls=None
),
logprobs=None
)
],
created=1719907176,
id='',
model='meta-llama/Meta-Llama-3-8B-Instruct',
object='text_completion',
system_fingerprint='2.0.4-sha-f426a33',
usage=ChatCompletionOutputUsage(
completion_tokens=8,
prompt_tokens=17,
total_tokens=25
)
)Contoh menggunakan streaming:
>>> from huggingface_hub import InferenceClient
>>> messages = [{"role": "user", "content": "What is the capital of France?"}]
>>> client = InferenceClient("meta-llama/Meta-Llama-3-8B-Instruct")
>>> for token in client.chat_completion(messages, max_tokens=10, stream=True):
... print(token)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content='The', role='assistant'), index=0, finish_reason=None)], created=1710498504)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content=' capital', role='assistant'), index=0, finish_reason=None)], created=1710498504)
(...)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content=' may', role='assistant'), index=0, finish_reason=None)], created=1710498504)Contoh menggunakan sintaks OpenAI:
# instead of `from openai import OpenAI`
from huggingface_hub import InferenceClient
# instead of `client = OpenAI(...)`
client = InferenceClient(
base_url=...,
api_key=...,
)
output = client.chat.completions.create(
model="meta-llama/Meta-Llama-3-8B-Instruct",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Count to 10"},
],
stream=True,
max_tokens=1024,
)
for chunk in output:
print(chunk.choices[0].delta.content)Contoh penggunaan penyedia pihak ketiga secara langsung dengan parameter tambahan (spesifik penyedia). Penggunaan akan ditagihkan ke akun Together AI Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="together", # Use Together AI provider
... api_key="<together_api_key>", # Pass your Together API key directly
... )
>>> client.chat_completion(
... model="meta-llama/Meta-Llama-3-8B-Instruct",
... messages=[{"role": "user", "content": "What is the capital of France?"}],
... extra_body={"safety_model": "Meta-Llama/Llama-Guard-7b"},
... )Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="novita", # Use Novita provider
... api_key="hf_...", # Pass your HF token
... )
>>> client.chat_completion(
... model="meta-llama/Meta-Llama-3-8B-Instruct",
... messages=[{"role": "user", "content": "What is the capital of France?"}],
... )Contoh menggunakan Gambar + Teks sebagai input:
>>> from huggingface_hub import InferenceClient
# provide a remote URL
>>> image_url ="https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"
# or a base64-encoded image
>>> image_path = "/path/to/image.jpeg"
>>> with open(image_path, "rb") as f:
... base64_image = base64.b64encode(f.read()).decode("utf-8")
>>> image_url = f"data:image/jpeg;base64,{base64_image}"
>>> client = InferenceClient("meta-llama/Llama-3.2-11B-Vision-Instruct")
>>> output = client.chat.completions.create(
... messages=[
... {
... "role": "user",
... "content": [
... {
... "type": "image_url",
... "image_url": {"url": image_url},
... },
... {
... "type": "text",
... "text": "Describe this image in one sentence.",
... },
... ],
... },
... ],
... )
>>> output
The image depicts the iconic Statue of Liberty situated in New York Harbor, New York, on a clear day.Contoh menggunakan tools:
>>> client = InferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> messages = [
... {
... "role": "system",
... "content": "Don't make assumptions about what values to plug into functions. Ask for clarification if a user request is ambiguous.",
... },
... {
... "role": "user",
... "content": "What's the weather like the next 3 days in San Francisco, CA?",
... },
... ]
>>> tools = [
... {
... "type": "function",
... "function": {
... "name": "get_current_weather",
... "description": "Get the current weather",
... "parameters": {
... "type": "object",
... "properties": {
... "location": {
... "type": "string",
... "description": "The city and state, e.g. San Francisco, CA",
... },
... "format": {
... "type": "string",
... "enum": ["celsius", "fahrenheit"],
... "description": "The temperature unit to use. Infer this from the users location.",
... },
... },
... "required": ["location", "format"],
... },
... },
... },
... {
... "type": "function",
... "function": {
... "name": "get_n_day_weather_forecast",
... "description": "Get an N-day weather forecast",
... "parameters": {
... "type": "object",
... "properties": {
... "location": {
... "type": "string",
... "description": "The city and state, e.g. San Francisco, CA",
... },
... "format": {
... "type": "string",
... "enum": ["celsius", "fahrenheit"],
... "description": "The temperature unit to use. Infer this from the users location.",
... },
... "num_days": {
... "type": "integer",
... "description": "The number of days to forecast",
... },
... },
... "required": ["location", "format", "num_days"],
... },
... },
... },
... ]
>>> response = client.chat_completion(
... model="meta-llama/Meta-Llama-3-70B-Instruct",
... messages=messages,
... tools=tools,
... tool_choice="auto",
... max_tokens=500,
... )
>>> response.choices[0].message.tool_calls[0].function
ChatCompletionOutputFunctionDefinition(
arguments={
'location': 'San Francisco, CA',
'format': 'fahrenheit',
'num_days': 3
},
name='get_n_day_weather_forecast',
description=None
)Contoh penggunaan response_format:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> messages = [
... {
... "role": "user",
... "content": "I saw a puppy a cat and a raccoon during my bike ride in the park. What did I see and when?",
... },
... ]
>>> response_format = {
... "type": "json",
... "value": {
... "properties": {
... "location": {"type": "string"},
... "activity": {"type": "string"},
... "animals_seen": {"type": "integer", "minimum": 1, "maximum": 5},
... "animals": {"type": "array", "items": {"type": "string"}},
... },
... "required": ["location", "activity", "animals_seen", "animals"],
... },
... }
>>> response = client.chat_completion(
... messages=messages,
... response_format=response_format,
... max_tokens=500,
... )
>>> response.choices[0].message.content
'{
y": "bike ride",
": ["puppy", "cat", "raccoon"],
_seen": 3,
n": "park"}'document_question_answering
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]question: strmodel: str | None = Nonedoc_stride: int | None = Nonehandle_impossible_answer: bool | None = Nonelang: str | None = Nonemax_answer_len: int | None = Nonemax_question_len: int | None = Nonemax_seq_len: int | None = Nonetop_k: int | None = Noneword_boxes: list[list[float] | str] | None = None ) → list[DocumentQuestionAnsweringOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO]) — Gambar input untuk konteks. Bisa berupa byte mentah, file gambar, atau URL ke gambar online. - question (
str) — Pertanyaan yang akan dijawab. - model (
str, opsional) — Model yang akan digunakan untuk tugas document question answering. Bisa berupa model ID yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model document question answering yang direkomendasikan secara default akan digunakan. Defaultnya None. - doc_stride (
int, opsional) — Jika kata-kata dalam dokumen terlalu panjang untuk muat bersama pertanyaan bagi model, dokumen akan dipecah menjadi beberapa bagian dengan tumpang tindih. Argumen ini mengontrol ukuran tumpang tindih tersebut. - handle_impossible_answer (
bool, opsional) — Apakah menerima impossible sebagai jawaban - lang (
str, opsional) — Bahasa yang digunakan saat menjalankan OCR. Bawaan adalah english. - max_answer_len (
int, opsional) — Panjang maksimum dari jawaban yang diprediksi (misalnya, hanya jawaban dengan panjang yang lebih pendek yang dipertimbangkan). - max_question_len (
int, opsional) — Panjang maksimum pertanyaan setelah tokenisasi. Akan dipangkas jika diperlukan. - max_seq_len (
int, opsional) — Panjang maksimum kalimat total (konteks + pertanyaan) dalam token untuk setiap chunk yang diteruskan ke model. Konteks akan dipecah menjadi beberapa chunk (menggunakan doc_stride sebagai overlap) jika diperlukan. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Dapat mengembalikan kurang dari top_k jawaban jika tidak ada cukup opsi yang tersedia dalam konteks. - word_boxes (
list[Union[list[float], str, opsional) — Daftar kata dan kotak pembatas (dinormalisasi 0->1000). Jika disediakan, inferensi akan melewati langkah OCR dan menggunakan kotak pembatas yang disediakan sebagai gantinya.
Mengembalikan
list[DocumentQuestionAnsweringOutputElement]
daftar item DocumentQuestionAnsweringOutputElement yang berisi label prediksi, probabilitas terkait, id kata, dan nomor halaman.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Jawab pertanyaan pada gambar dokumen.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.document_question_answering(image="https://huggingface.co/spaces/impira/docquery/resolve/2359223c1837a7587402bda0f2643382a6eefeab/invoice.png", question="What is the invoice number?")
[DocumentQuestionAnsweringOutputElement(answer='us-001', end=16, score=0.9999666213989258, start=16)]feature_extraction
< source >( text: str | list[str]normalize: bool | None = Noneprompt_name: str | None = Nonetruncate: bool | None = Nonetruncation_direction: typing.Optional[typing.Literal['left', 'right']] = Nonedimensions: int | None = Noneencoding_format: typing.Optional[typing.Literal['float', 'base64']] = Nonemodel: str | None = None ) → np.ndarray
Parameter
- text (str atau list[str]) — Teks atau daftar teks yang akan di-embed.
- model (str, opsional) — Model yang akan digunakan untuk tugas ekstraksi fitur. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model ekstraksi fitur yang direkomendasikan secara default akan digunakan. Defaultnya None.
- normalize (bool, opsional) — Apakah akan menormalisasi embedding atau tidak. Hanya tersedia pada server yang didukung oleh Text-Embedding-Inference.
- prompt_name (str, opsional) —
Nama prompt yang harus digunakan untuk encoding. Jika tidak diset, tidak ada prompt yang akan diterapkan.
Harus menjadi kunci dalam kamus prompts konfigurasi Sentence Transformers.
Sebagai contoh, jika
prompt_nameadalah “query” danpromptsadalah {“query”: “query: ”,…}, maka kalimat “What is the capital of France?” akan di-encode sebagai “query: What is the capital of France?” karena teks prompt akan ditambahkan di depan teks apa pun yang akan di-encode. - truncate (bool, opsional) — Apakah akan memotong (truncate) embedding atau tidak. Hanya tersedia pada server yang didukung oleh Text-Embedding-Inference.
- truncation_direction (Literal[“left”, “right”], opsional) — Sisi mana dari input yang harus dipangkas ketika truncate=True diteruskan.
- dimensions (int, opsional) — Jumlah dimensi yang harus dimiliki embedding output yang dihasilkan. Hanya tersedia pada endpoint embedding yang kompatibel dengan OpenAI.
- encoding_format (Literal[“float”, “base64”], opsional) — Format dari embedding output. Bisa berupa “float” atau “base64”. Hanya tersedia pada endpoint embedding yang kompatibel dengan OpenAI.
Mengembalikan
np.ndarray
Embedding yang merepresentasikan teks input sebagai array numpy float32.
Membuang
[InferenceTimeoutError] atau [HfHubHTTPError]
- [InferenceTimeoutError] — Jika model tidak tersedia atau permintaan melebihi batas waktu.
- [HfHubHTTPError] — Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Generate embeddings untuk teks atau batch teks tertentu.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.feature_extraction("Hi, who are you?")
array([[ 2.424802 , 2.93384 , 1.1750331 , ..., 1.240499, -0.13776633, -0.7889173 ],
[-0.42943227, -0.6364878 , -1.693462 , ..., 0.41978157, -2.4336355 , 0.6162071 ],
...,
[ 0.28552425, -0.928395 , -1.2077185 , ..., 0.76810825, -2.1069427 , 0.6236161 ]], dtype=float32)fill_mask
< source >( text: strmodel: str | None = Nonetargets: list[str] | None = Nonetop_k: int | None = None ) → list[FillMaskOutputElement]
Parameter
- text (
str) — string yang akan diisi, harus berisi token [MASK] (periksa model card untuk nama mask yang tepat). - model (
str, opsional) — Model yang akan digunakan untuk tugas fill mask. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model fill mask yang direkomendasikan secara default akan digunakan. - targets (
list[str, opsional) — Jika diberikan, model akan membatasi skor pada target yang diberikan alih-alih mencari di seluruh kosakata. Jika target yang diberikan tidak ada dalam kosakata model, target tersebut akan ditokenisasi dan token hasil pertama yang dihasilkan akan digunakan (dengan peringatan, dan hal itu mungkin lebih lambat). - top_k (
int, opsional) — Jika diberikan, menimpa jumlah prediksi yang dikembalikan.
Mengembalikan
list[FillMaskOutputElement]
daftar item FillMaskOutputElement yang berisi label prediksi, probabilitas terkait, referensi token, dan teks yang dilengkapi.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Isi lubang dengan kata yang hilang (token, untuk lebih tepatnya).
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.fill_mask("The goal of life is <mask>.")
[
FillMaskOutputElement(score=0.06897063553333282, token=11098, token_str=' happiness', sequence='The goal of life is happiness.'),
FillMaskOutputElement(score=0.06554922461509705, token=45075, token_str=' immortality', sequence='The goal of life is immortality.')
]get_endpoint_info
< source >( model: str | None = None ) → dict[str, Any]
Parameter
- model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None.
Mengembalikan
dict[str, Any]
Informasi tentang endpoint.
Dapatkan informasi tentang endpoint yang di-deploy.
Endpoint ini hanya tersedia pada endpoint yang didukung oleh Text-Generation-Inference (TGI) atau Text-Embedding-Inference (TEI).
Endpoint yang didukung oleh transformers mengembalikan payload kosong.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> client.get_endpoint_info()
{
'model_id': 'meta-llama/Meta-Llama-3-70B-Instruct',
'model_sha': None,
'model_dtype': 'torch.float16',
'model_device_type': 'cuda',
'model_pipeline_tag': None,
'max_concurrent_requests': 128,
'max_best_of': 2,
'max_stop_sequences': 4,
'max_input_length': 8191,
'max_total_tokens': 8192,
'waiting_served_ratio': 0.3,
'max_batch_total_tokens': 1259392,
'max_waiting_tokens': 20,
'max_batch_size': None,
'validation_workers': 32,
'max_client_batch_size': 4,
'version': '2.0.2',
'sha': 'dccab72549635c7eb5ddb17f43f0b7cdff07c214',
'docker_label': 'sha-dccab72'
}health_check
< source >( model: str | None = None ) → bool
Periksa kesehatan endpoint yang telah di-deploy.
Health check hanya tersedia dengan Inference Endpoints yang didukung oleh Text-Generation-Inference (TGI) atau Text-Embedding-Inference (TEI).
klasifikasi_gambar
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonefunction_to_apply: typing.Optional[ForwardRef('ImageClassificationOutputTransform')] = Nonetop_k: int | None = None ) → list[ImageClassificationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar yang akan diklasifikasikan. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk klasifikasi gambar. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk klasifikasi gambar akan digunakan. - function_to_apply (
"ImageClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi.
Mengembalikan
list[ImageClassificationOutputElement]
daftar item ImageClassificationOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi gambar pada gambar yang diberikan menggunakan model yang ditentukan.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.image_classification("https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg")
[ImageClassificationOutputElement(label='Blenheim spaniel', score=0.9779096841812134), ...]segmentasi_gambar
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonemask_threshold: float | None = Noneoverlap_mask_area_threshold: float | None = Nonesubtask: typing.Optional[ForwardRef('ImageSegmentationSubtask')] = Nonethreshold: float | None = None ) → list[ImageSegmentationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar yang akan disegmentasi. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk segmentasi gambar. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk segmentasi gambar akan digunakan. - mask_threshold (
float, opsional) — Ambang batas yang digunakan saat mengubah mask prediksi menjadi nilai biner. - overlap_mask_area_threshold (
float, opsional) — Ambang batas tumpang tindih mask untuk menghilangkan segmen kecil yang tidak terhubung. - subtask (
"ImageSegmentationSubtask", opsional) — Tugas segmentasi yang akan dilakukan, tergantung pada kemampuan model. - threshold (
float, opsional) — Ambang probabilitas untuk menyaring mask prediksi.
Mengembalikan
list[ImageSegmentationOutputElement]
Daftar item ImageSegmentationOutputElement yang berisi masker segmentasi dan atribut terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan segmentasi gambar pada gambar yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
image_to_image
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]prompt: str | None = Nonenegative_prompt: str | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Nonemodel: str | None = Nonetarget_size: huggingface_hub.inference._generated.types.image_to_image.ImageToImageTargetSize | None = None**kwargs ) → Image
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk penerjemahan. Dapat berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - prompt (
str, opsional) — Prompt teks untuk memandu generasi gambar. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan gambar. - num_inference_steps (
int, opsional) — Untuk model difusi. Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Untuk model difusi. Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan gambar yang sangat terkait dengan prompt teks, dengan mengorbankan kualitas gambar yang lebih rendah. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - target_size (
ImageToImageTargetSize, opsional) — Ukuran gambar keluaran dalam piksel. Parameter ini hanya didukung oleh beberapa penyedia dan untuk model tertentu. Parameter ini akan diabaikan jika tidak didukung.
Mengembalikan
Image
Gambar yang diterjemahkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan terjemahan gambar-ke-gambar menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
image_to_text
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = None ) → ImageToTextOutput
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk dicaption. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None.
Mengembalikan
Teks yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Menerima gambar input dan mengembalikan teks.
Model dapat menghasilkan output yang sangat berbeda tergantung pada kasus penggunaan Anda (image captioning, optical character recognition (OCR), Pix2Struct, dll.). Silakan lihat model card untuk mempelajari lebih lanjut tentang spesifikasi model.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.image_to_text("cat.jpg")
'a cat standing in a grassy field '
>>> client.image_to_text("https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg")
'a dog laying on the grass next to a flower pot 'image_to_video
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Noneprompt: str | None = Nonenegative_prompt: str | None = Nonenum_frames: float | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Noneseed: int | None = Nonetarget_size: huggingface_hub.inference._generated.types.image_to_video.ImageToVideoTargetSize | None = None**kwargs ) → bytes
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk menghasilkan video. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - prompt (
str, opsional) — Prompt teks untuk memandu pembuatan video. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan video. - num_frames (
float, opsional) — Parameter num_frames menentukan berapa banyak frame video yang dihasilkan. - num_inference_steps (
int, opsional) — Untuk model difusi. Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Untuk model difusi. Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan video yang sangat terkait dengan prompt teks, dengan mengorbankan kualitas gambar yang lebih rendah. - seed (
int, opsional) — Seed yang akan digunakan untuk pembuatan video. - target_size (
ImageToVideoTargetSize, opsional) — Ukuran dalam piksel dari bingkai video keluaran. - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan video dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - seed (
int, opsional) — Seed untuk generator angka acak.
Mengembalikan
bytes
Video yang dihasilkan.
Buat video dari gambar input.
deteksi_objek
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonethreshold: float | None = None ) → list[ObjectDetectionOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar untuk mendeteksi objek. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk deteksi objek. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk deteksi objek (DETR) akan digunakan. - threshold (
float, opsional) — Probabilitas yang diperlukan untuk membuat prediksi.
Mengembalikan
list[ObjectDetectionOutputElement]
Daftar item ObjectDetectionOutputElement yang berisi kotak pembatas dan atribut terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError atau ValueError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.ValueError— Jika output permintaan bukan List.
Lakukan deteksi objek pada gambar yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
question_answering
< source >( question: strcontext: strmodel: str | None = Nonealign_to_words: bool | None = Nonedoc_stride: int | None = Nonehandle_impossible_answer: bool | None = Nonemax_answer_len: int | None = Nonemax_question_len: int | None = Nonemax_seq_len: int | None = Nonetop_k: int | None = None ) → Union[QuestionAnsweringOutputElement, listQuestionAnsweringOutputElement]
Parameter
- question (
str) — Pertanyaan yang akan dijawab. - context (
str) — Konteks dari pertanyaan. - model (
str) — Model yang akan digunakan untuk tugas question answering. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. - align_to_words (
bool, opsional) — Mencoba menyelaraskan jawaban dengan kata-kata yang sebenarnya. Meningkatkan kualitas pada bahasa yang dipisahkan oleh spasi. Mungkin berdampak buruk pada bahasa yang tidak dipisahkan oleh spasi (seperti Jepang atau Mandarin) - doc_stride (
int, opsional) — Jika konteks terlalu panjang untuk muat bersama pertanyaan bagi model, konteks tersebut akan dipecah menjadi beberapa chunk dengan beberapa tumpang tindih. Argumen ini mengontrol ukuran tumpang tindih tersebut. - handle_impossible_answer (
bool, opsional) — Apakah menerima "impossible" sebagai jawaban. - max_answer_len (
int, opsional) — Panjang maksimum dari jawaban yang diprediksi (misalnya, hanya jawaban dengan panjang yang lebih pendek yang dipertimbangkan). - max_question_len (
int, opsional) — Panjang maksimum pertanyaan setelah tokenisasi. Akan dipangkas jika diperlukan. - max_seq_len (
int, opsional) — Panjang maksimum kalimat total (konteks + pertanyaan) dalam token untuk setiap chunk yang diteruskan ke model. Konteks akan dipecah menjadi beberapa chunk (menggunakan docStride sebagai overlap) jika diperlukan. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Perhatikan bahwa kami mengembalikan jawaban yang lebih sedikit dari topk jika tidak ada cukup opsi yang tersedia dalam konteks.
Mengembalikan
Union[QuestionAnsweringOutputElement, listQuestionAnsweringOutputElement]
When top_k is 1 or not provided, it returns a single QuestionAnsweringOutputElement.
When top_k is greater than 1, it returns a list of QuestionAnsweringOutputElement.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Ambil jawaban untuk sebuah pertanyaan dari teks yang diberikan.
sentence_similarity
< source >( sentence: strother_sentences: listmodel: str | None = None ) → list[float]
Parameter
- sentence (
str) — Kalimat utama yang akan dibandingkan dengan kalimat lainnya. - other_sentences (
list[str]) — Daftar kalimat untuk dibandingkan. - model (
str, opsional) — Model yang akan digunakan untuk tugas kemiripan kalimat. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model kemiripan kalimat yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
list[float]
Embedding yang mewakili teks input.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Hitung kemiripan semantik antara sebuah kalimat dan daftar kalimat lainnya dengan membandingkan embedding mereka.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.sentence_similarity(
... "Machine learning is so easy.",
... other_sentences=[
... "Deep learning is so straightforward.",
... "This is so difficult, like rocket science.",
... "I can't believe how much I struggled with this.",
... ],
... )
[0.7785726189613342, 0.45876261591911316, 0.2906220555305481]ringkasan
< source >( text: strmodel: str | None = Noneclean_up_tokenization_spaces: bool | None = Nonegenerate_parameters: dict[str, typing.Any] | None = Nonetruncation: typing.Optional[ForwardRef('SummarizationTruncationStrategy')] = None ) → SummarizationOutput
Parameter
- text (
str) — Teks input yang akan diringkas. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model rekomendasi default untuk summarization akan digunakan. - clean_up_tokenization_spaces (
bool, opsional) — Apakah akan membersihkan spasi tambahan yang mungkin ada dalam teks output. - generate_parameters (
dict[str, Any], opsional) — Parametrisasi tambahan untuk algoritma generasi teks. - truncation (
"SummarizationTruncationStrategy", opsional) — Strategi pemotongan yang akan digunakan.
Mengembalikan
Teks ringkasan yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Buat ringkasan dari teks yang diberikan menggunakan model yang ditentukan.
table_question_answering
< source >( table: dictquery: strmodel: str | None = Nonepadding: typing.Optional[ForwardRef('Padding')] = Nonesequential: bool | None = Nonetruncation: bool | None = None ) → TableQuestionAnsweringOutputElement
Parameter
- table (
str) — Tabel data yang direpresentasikan sebagai dict berisi daftar, di mana entri adalah header dan daftar berisi semua nilai; semua daftar harus memiliki ukuran yang sama. - query (
str) — Kueri dalam teks polos yang ingin Anda ajukan ke tabel. - model (
str) — Model yang akan digunakan untuk tugas menjawab pertanyaan tabel. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. - padding (
"Padding", opsional) — Mengaktifkan dan mengontrol padding. - sequential (
bool, opsional) — Apakah melakukan inferensi secara berurutan atau sebagai batch. Batching lebih cepat, tetapi model seperti SQA memerlukan inferensi dilakukan secara berurutan untuk mengekstrak relasi di dalam urutan, mengingat sifat percakapannya. - truncation (
bool, opsional) — Mengaktifkan dan mengontrol pemotongan.
Mengembalikan
output penjawab pertanyaan tabel yang berisi jawaban, koordinat, sel, dan agregator yang digunakan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Ambil jawaban untuk sebuah pertanyaan dari informasi yang diberikan dalam tabel.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> query = "How many stars does the transformers repository have?"
>>> table = {"Repository": ["Transformers", "Datasets", "Tokenizers"], "Stars": ["36542", "4512", "3934"]}
>>> client.table_question_answering(table, query, model="google/tapas-base-finetuned-wtq")
TableQuestionAnsweringOutputElement(answer='36542', coordinates=[[0, 1]], cells=['36542'], aggregator='AVERAGE')klasifikasi_tabular
< source >( table: dictmodel: str | None = None ) → List
Parameter
- table (
dict[str, Any]) — Kumpulan atribut untuk diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi tabular. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi tabular yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
List
daftar label, satu per baris di tabel awal.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Mengklasifikasikan kategori target (sebuah grup) berdasarkan seperangkat atribut.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> table = {
... "fixed_acidity": ["7.4", "7.8", "10.3"],
... "volatile_acidity": ["0.7", "0.88", "0.32"],
... "citric_acid": ["0", "0", "0.45"],
... "residual_sugar": ["1.9", "2.6", "6.4"],
... "chlorides": ["0.076", "0.098", "0.073"],
... "free_sulfur_dioxide": ["11", "25", "5"],
... "total_sulfur_dioxide": ["34", "67", "13"],
... "density": ["0.9978", "0.9968", "0.9976"],
... "pH": ["3.51", "3.2", "3.23"],
... "sulphates": ["0.56", "0.68", "0.82"],
... "alcohol": ["9.4", "9.8", "12.6"],
... }
>>> client.tabular_classification(table=table, model="julien-c/wine-quality")
["5", "5", "5"]regresi_tabular
< source >( table: dictmodel: str | None = None ) → List
Parameter
- table (
dict[str, Any]) — Kumpulan atribut yang disimpan dalam tabel. Atribut yang digunakan untuk memprediksi target dapat berupa numerik maupun kategorikal. - model (
str, opsional) — Model yang akan digunakan untuk tugas regresi tabular. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model regresi tabular yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
List
daftar nilai target numerik yang diprediksi.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Memprediksi nilai target numerik berdasarkan seperangkat atribut/fitur dalam tabel.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> table = {
... "Height": ["11.52", "12.48", "12.3778"],
... "Length1": ["23.2", "24", "23.9"],
... "Length2": ["25.4", "26.3", "26.5"],
... "Length3": ["30", "31.2", "31.1"],
... "Species": ["Bream", "Bream", "Bream"],
... "Width": ["4.02", "4.3056", "4.6961"],
... }
>>> client.tabular_regression(table, model="scikit-learn/Fish-Weight")
[110, 120, 130]klasifikasi_teks
< source >( text: strmodel: str | None = Nonetop_k: int | None = Nonefunction_to_apply: typing.Optional[ForwardRef('TextClassificationOutputTransform')] = None ) → list[TextClassificationOutputElement]
Parameter
- text (
str) — String yang akan diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi teks. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi teks yang direkomendasikan secara default akan digunakan. Defaultnya None. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi. - function_to_apply (
"TextClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor.
Mengembalikan
list[TextClassificationOutputElement]
daftar item TextClassificationOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi teks (misalnya analisis sentimen) pada teks yang diberikan.
text_generation
< source >( prompt: strdetails: bool | None = Nonestream: bool | None = Nonemodel: str | None = Noneadapter_id: str | None = Nonebest_of: int | None = Nonedecoder_input_details: bool | None = Nonedo_sample: bool | None = Nonefrequency_penalty: float | None = Nonegrammar: huggingface_hub.inference._generated.types.text_generation.TextGenerationInputGrammarType | None = Nonemax_new_tokens: int | None = Nonerepetition_penalty: float | None = Nonereturn_full_text: bool | None = Noneseed: int | None = Nonestop: list[str] | None = Nonetemperature: float | None = Nonetop_k: int | None = Nonetop_n_tokens: int | None = Nonetop_p: float | None = Nonetruncate: int | None = Nonetypical_p: float | None = Nonewatermark: bool | None = None ) → Union[str, TextGenerationOutput, Iterable[str], Iterable[TextGenerationStreamOutput]]
Parameter
- prompt (
str) — Teks input. - details (
bool, opsional) — Secara default, text_generation mengembalikan string. Berikandetails=Truejika Anda menginginkan output yang detail (token, probabilitas, seed, alasan selesai, dll.). Hanya tersedia untuk model yang berjalan dengan backendtext-generation-inference. - stream (
bool, opsional) — Secara default, text_generation mengembalikan teks hasil generasi secara utuh. Berikanstream=Truejika Anda ingin aliran token yang dikembalikan. Hanya tersedia untuk model yang berjalan dengan backendtext-generation-inference. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - adapter_id (
str, opsional) — ID adapter Lora. - best_of (
int, opsional) — Hasilkan best_of urutan dan kembalikan yang memiliki logprobs token tertinggi. - decoder_input_details (
bool, opsional) — Kembalikan logprobs dan id token input decoder. Anda juga harus mengaturdetails=Trueagar ini diperhitungkan. Nilainya secara default adalahFalse. - do_sample (
bool, opsional) — Aktifkan sampling logits - frequency_penalty (
float, opsional) — Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan frekuensi yang sudah ada dalam teks sejauh ini, sehingga mengurangi kemungkinan model mengulang baris yang sama secara verbatim. - grammar (TextGenerationInputGrammarType, opsional) — Kendala tata bahasa. Bisa berupa JSONSchema atau regex.
- max_new_tokens (
int, opsional) — Jumlah maksimum token yang dihasilkan. Bawaan adalah 100. - repetition_penalty (
float, opsional) — Parameter untuk penalti pengulangan. 1.0 berarti tidak ada penalti. Lihat makalah ini untuk detail lebih lanjut. - return_full_text (
bool, opsional) — Apakah prompt akan ditambahkan di depan teks yang dihasilkan - seed (
int, opsional) — Biji acak untuk pengambilan sampel - stop (
list[str], opsional) — Berhenti menghasilkan token jika anggota daristopdihasilkan. - temperature (
float, opsional) — Nilai yang digunakan untuk memodulasi distribusi logits. - top_n_tokens (
int, opsional) — Kembalikan informasi tentangtop_n_tokenstoken yang paling mungkin pada setiap langkah generasi, bukan hanya token yang disampelkan. - top_k (
int, *opsional`) — Jumlah token kosakata dengan probabilitas tertinggi yang dipertahankan untuk penyaringan top-k. - top_p (
float, *optional) -- If set to < 1, only the smallest set of most probable tokens with probabilities that add up totop_p` or higher are kept for generation. - truncate (
int, *optional`) — Memotong token input menjadi ukuran yang ditentukan. - typical_p (
float, *optional`) — Mass Typical Decoding Lihat Typical Decoding for Natural Language Generation untuk informasi lebih lanjut - watermark (
bool, opsional) — Watermarking dengan A Watermark for Large Language Models
Mengembalikan
Union[str, TextGenerationOutput, Iterable[str], Iterable[TextGenerationStreamOutput]]
Teks yang dihasilkan yang dikembalikan dari server:
- Jika
stream=Falsedandetails=False, teks yang dihasilkan dikembalikan sebagaistr(default) - jika
stream=Truedandetails=False, teks yang dihasilkan dikembalikan per token sebagaiIterable[str] - Jika
stream=Falsedandetails=True, teks yang dihasilkan dikembalikan dengan detail lebih banyak sebagai TextGenerationOutput - Jika
details=Truedanstream=True, teks yang dihasilkan dikembalikan per token sebagai iterable dari TextGenerationStreamOutput
Membuang
ValidationError atau InferenceTimeoutError atau HfHubHTTPError
ValidationError— Jika nilai input tidak valid. Tidak ada panggilan HTTP yang dibuat ke server.- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Diberikan sebuah prompt, hasilkan teks berikut.
Jika Anda ingin menghasilkan respons dari pesan chat, Anda harus menggunakan metode InferenceClient.chat_completion(). Metode ini menerima daftar pesan alih-alih satu prompt teks tunggal dan menangani templating chat untuk Anda.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
# Case 1: generate text
>>> client.text_generation("The huggingface_hub library is ", max_new_tokens=12)
'100% open source and built to be easy to use.'
# Case 2: iterate over the generated tokens. Useful for large generation.
>>> for token in client.text_generation("The huggingface_hub library is ", max_new_tokens=12, stream=True):
... print(token)
100
%
open
source
and
built
to
be
easy
to
use
.
# Case 3: get more details about the generation process.
>>> client.text_generation("The huggingface_hub library is ", max_new_tokens=12, details=True)
TextGenerationOutput(
generated_text='100% open source and built to be easy to use.',
details=TextGenerationDetails(
finish_reason='length',
generated_tokens=12,
seed=None,
prefill=[
TextGenerationPrefillOutputToken(id=487, text='The', logprob=None),
TextGenerationPrefillOutputToken(id=53789, text=' hugging', logprob=-13.171875),
(...)
TextGenerationPrefillOutputToken(id=204, text=' ', logprob=-7.0390625)
],
tokens=[
TokenElement(id=1425, text='100', logprob=-1.0175781, special=False),
TokenElement(id=16, text='%', logprob=-0.0463562, special=False),
(...)
TokenElement(id=25, text='.', logprob=-0.5703125, special=False)
],
best_of_sequences=None
)
)
# Case 4: iterate over the generated tokens with more details.
# Last object is more complete, containing the full generated text and the finish reason.
>>> for details in client.text_generation("The huggingface_hub library is ", max_new_tokens=12, details=True, stream=True):
... print(details)
...
TextGenerationStreamOutput(token=TokenElement(id=1425, text='100', logprob=-1.0175781, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=16, text='%', logprob=-0.0463562, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=1314, text=' open', logprob=-1.3359375, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=3178, text=' source', logprob=-0.28100586, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=273, text=' and', logprob=-0.5961914, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=3426, text=' built', logprob=-1.9423828, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=271, text=' to', logprob=-1.4121094, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=314, text=' be', logprob=-1.5224609, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=1833, text=' easy', logprob=-2.1132812, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=271, text=' to', logprob=-0.08520508, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=745, text=' use', logprob=-0.39453125, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(
id=25,
text='.',
logprob=-0.5703125,
special=False),
generated_text='100% open source and built to be easy to use.',
details=TextGenerationStreamOutputStreamDetails(finish_reason='length', generated_tokens=12, seed=None)
)
# Case 5: generate constrained output using grammar
>>> response = client.text_generation(
... prompt="I saw a puppy a cat and a raccoon during my bike ride in the park",
... model="HuggingFaceH4/zephyr-orpo-141b-A35b-v0.1",
... max_new_tokens=100,
... repetition_penalty=1.3,
... grammar={
... "type": "json",
... "value": {
... "properties": {
... "location": {"type": "string"},
... "activity": {"type": "string"},
... "animals_seen": {"type": "integer", "minimum": 1, "maximum": 5},
... "animals": {"type": "array", "items": {"type": "string"}},
... },
... "required": ["location", "activity", "animals_seen", "animals"],
... },
... },
... )
>>> json.loads(response)
{
"activity": "bike riding",
"animals": ["puppy", "cat", "raccoon"],
"animals_seen": 3,
"location": "park"
}text_to_image
< source >( prompt: strnegative_prompt: str | None = Noneheight: int | None = Nonewidth: int | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Nonemodel: str | None = Nonescheduler: str | None = Noneseed: int | None = Noneextra_body: dict[str, typing.Any] | None = None ) → Image
Parameter
- prompt (
str) — Prompt untuk menghasilkan gambar. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan gambar. - height (
int, opsional) — Tinggi gambar keluaran dalam piksel - width (
int, opsional) — Lebar gambar keluaran dalam piksel - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan gambar yang sangat terkait dengan prompt teks, tetapi nilai yang terlalu tinggi dapat menyebabkan saturasi dan artefak lainnya. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model teks-ke-gambar yang direkomendasikan secara default akan digunakan. Defaultnya None. - scheduler (
str, opsional) — Timpa scheduler dengan yang kompatibel. - seed (
int, opsional) — Seed untuk generator angka acak. - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
Image
Gambar yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Buat gambar berdasarkan teks yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> image = client.text_to_image("An astronaut riding a horse on the moon.")
>>> image.save("astronaut.png")
>>> image = client.text_to_image(
... "An astronaut riding a horse on the moon.",
... negative_prompt="low resolution, blurry",
... model="stabilityai/stable-diffusion-2-1",
... )
>>> image.save("better_astronaut.png")>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="fal-ai", # Use fal.ai provider
... api_key="fal-ai-api-key", # Pass your fal.ai API key
... )
>>> image = client.text_to_image(
... "A majestic lion in a fantasy forest",
... model="black-forest-labs/FLUX.1-schnell",
... )
>>> image.save("lion.png")Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> image = client.text_to_image(
... "An astronaut riding a horse on the moon.",
... model="black-forest-labs/FLUX.1-dev",
... )
>>> image.save("astronaut.png")Contoh menggunakan penyedia Replicate dengan parameter tambahan
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> image = client.text_to_image(
... "An astronaut riding a horse on the moon.",
... model="black-forest-labs/FLUX.1-schnell",
... extra_body={"output_quality": 100},
... )
>>> image.save("astronaut.png")text_to_speech
< source >( text: strmodel: str | None = Nonedo_sample: bool | None = Noneearly_stopping: typing.Union[bool, ForwardRef('TextToSpeechEarlyStoppingEnum'), NoneType] = Noneepsilon_cutoff: float | None = Noneeta_cutoff: float | None = Nonemax_length: int | None = Nonemax_new_tokens: int | None = Nonemin_length: int | None = Nonemin_new_tokens: int | None = Nonenum_beam_groups: int | None = Nonenum_beams: int | None = Nonepenalty_alpha: float | None = Nonetemperature: float | None = Nonetop_k: int | None = Nonetop_p: float | None = Nonetypical_p: float | None = Noneuse_cache: bool | None = Noneextra_body: dict[str, typing.Any] | None = None ) → bytes
Parameter
- text (
str) — Teks yang akan disintesis. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model text-to-speech yang direkomendasikan secara default akan digunakan. Defaultnya None. - do_sample (
bool, opsional) — Apakah akan menggunakan sampling alih-alih greedy decoding saat menghasilkan token baru. - early_stopping (
Union[bool, "TextToSpeechEarlyStoppingEnum"], opsional) — Mengontrol kondisi penghentian untuk metode berbasis beam. - epsilon_cutoff (
float, opsional) — Jika diatur ke float yang benar-benar berada di antara 0 dan 1, hanya token dengan probabilitas kondisional yang lebih besar dari epsilon_cutoff yang akan diambil sampelnya. Dalam makalah, nilai yang disarankan berkisar dari 3e-4 hingga 9e-4, tergantung pada ukuran model. Lihat Truncation Sampling as Language Model Desmoothing untuk detail lebih lanjut. - eta_cutoff (
float, opsional) — Eta sampling adalah hibrida dari sampling yang secara lokal tipikal dan epsilon sampling. Jika diatur ke float yang benar-benar berada di antara 0 dan 1, sebuah token hanya dipertimbangkan jika nilainya lebih besar dari eta_cutoff atau sqrt(eta_cutoff)- exp(-entropy(softmax(next_token_logits))). Suku terakhir secara intuitif adalah probabilitas token berikutnya yang diharapkan, diskalakan dengan sqrt(eta_cutoff). Dalam makalah, nilai yang disarankan berkisar dari 3e-4 hingga 2e-3, tergantung pada ukuran model. Lihat Truncation Sampling as Language Model Desmoothing untuk detail lebih lanjut.
- max_length (
int, opsional) — Panjang maksimum (dalam token) dari teks yang dihasilkan, termasuk input. - max_new_tokens (
int, opsional) — Jumlah maksimum token yang akan dihasilkan. Menggantikan max_length. - min_length (
int, opsional) — Panjang minimum (dalam token) dari teks yang dihasilkan, termasuk input. - min_new_tokens (
int, opsional) — Jumlah minimum token yang akan dihasilkan. Menggantikan min_length. - num_beam_groups (
int, opsional) — Jumlah grup untuk membagi num_beams guna memastikan keragaman di antara berbagai grup beam. Lihat makalah ini untuk detail lebih lanjut. - num_beams (
int, opsional) — Jumlah beam yang digunakan untuk beam search. - penalty_alpha (
float, opsional) — Nilai ini menyeimbangkan keyakinan model dan penalti degenerasi dalam decoding contrastive search. - temperature (
float, opsional) — Nilai yang digunakan untuk memodulasi probabilitas token berikutnya. - top_k (
int, opsional) — Jumlah token kosakata dengan probabilitas tertinggi yang dipertahankan untuk penyaringan top-k. - top_p (
float, opsional) — Jika diatur ke float < 1, hanya kumpulan token paling probabel terkecil dengan probabilitas yang berjumlah top_p atau lebih tinggi yang dipertahankan untuk generasi. - typical_p (
float, opsional) — Ukuran tipikalitas lokal mengukur seberapa mirip probabilitas kondisional untuk memprediksi token target berikutnya dengan probabilitas kondisional yang diharapkan untuk memprediksi token acak berikutnya, mengingat teks parsial yang sudah dihasilkan. Jika diatur ke float < 1, himpunan terkecil dari token-token yang paling tipikal secara lokal dengan probabilitas yang berjumlah typical_p atau lebih tinggi akan dipertahankan untuk generasi. Lihat makalah ini untuk detail lebih lanjut. - use_cache (
bool, opsional) — Apakah model harus menggunakan perhatian kunci/nilai terakhir yang lalu untuk mempercepat decoding - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
bytes
Audio yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Sintesis audio suara yang mengucapkan teks tertentu.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
>>> from pathlib import Path
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> audio = client.text_to_speech("Hello world")
>>> Path("hello_world.flac").write_bytes(audio)Contoh penggunaan penyedia pihak ketiga secara langsung. Penggunaan akan ditagihkan ke akun Replicate Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate",
... api_key="your-replicate-api-key", # Pass your Replicate API key directly
... )
>>> audio = client.text_to_speech(
... text="Hello world",
... model="OuteAI/OuteTTS-0.3-500M",
... )
>>> Path("hello_world.flac").write_bytes(audio)Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate",
... api_key="hf_...", # Pass your HF token
... )
>>> audio =client.text_to_speech(
... text="Hello world",
... model="OuteAI/OuteTTS-0.3-500M",
... )
>>> Path("hello_world.flac").write_bytes(audio)>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> audio = client.text_to_speech(
... "Hello, my name is Kororo, an awesome text-to-speech model.",
... model="hexgrad/Kokoro-82M",
... extra_body={"voice": "af_nicole"},
... )
>>> Path("hello.flac").write_bytes(audio)Contoh music-gen menggunakan “YuE-s1-7B-anneal-en-cot” di fal.ai
>>> from huggingface_hub import InferenceClient
>>> lyrics = '''
... [verse]
... In the town where I was born
... Lived a man who sailed to sea
... And he told us of his life
... In the land of submarines
... So we sailed on to the sun
... 'Til we found a sea of green
... And we lived beneath the waves
... In our yellow submarine
... [chorus]
... We all live in a yellow submarine
... Yellow submarine, yellow submarine
... We all live in a yellow submarine
... Yellow submarine, yellow submarine
... '''
>>> genres = "pavarotti-style tenor voice"
>>> client = InferenceClient(
... provider="fal-ai",
... model="m-a-p/YuE-s1-7B-anneal-en-cot",
... api_key=...,
... )
>>> audio = client.text_to_speech(lyrics, extra_body={"genres": genres})
>>> with open("output.mp3", "wb") as f:
... f.write(audio)text_to_video
< source >( prompt: strmodel: str | None = Noneguidance_scale: float | None = Nonenegative_prompt: list[str] | None = Nonenum_frames: float | None = Nonenum_inference_steps: int | None = Noneseed: int | None = Noneextra_body: dict[str, typing.Any] | None = None ) → bytes
Parameter
- prompt (
str) — Prompt untuk menghasilkan video. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model text-to-video yang direkomendasikan secara default akan digunakan. Defaultnya None. - guidance_scale (
float, opsional) — Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan video yang sangat terkait dengan prompt teks, tetapi nilai yang terlalu tinggi dapat menyebabkan saturasi dan artefak lainnya. - negative_prompt (
list[str], opsional) — Satu atau beberapa prompt untuk mengarahkan apa yang TIDAK boleh disertakan dalam pembuatan video. - num_frames (
float, opsional) — Parameter num_frames menentukan berapa banyak frame video yang dihasilkan. - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan video dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - seed (
int, opsional) — Seed untuk generator angka acak. - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
bytes
Video yang dihasilkan.
Buat video berdasarkan teks yang diberikan.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
Contoh penggunaan penyedia pihak ketiga secara langsung. Penggunaan akan ditagihkan ke akun fal.ai Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="fal-ai", # Using fal.ai provider
... api_key="fal-ai-api-key", # Pass your fal.ai API key
... )
>>> video = client.text_to_video(
... "A majestic lion running in a fantasy forest",
... model="tencent/HunyuanVideo",
... )
>>> with open("lion.mp4", "wb") as file:
... file.write(video)Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Using replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> video = client.text_to_video(
... "A cat running in a park",
... model="genmo/mochi-1-preview",
... )
>>> with open("cat.mp4", "wb") as file:
... file.write(video)token_classification
< source >( text: strmodel: str | None = Noneaggregation_strategy: typing.Optional[ForwardRef('TokenClassificationAggregationStrategy')] = Noneignore_labels: list[str] | None = Nonestride: int | None = None ) → list[TokenClassificationOutputElement]
Parameter
- text (
str) — String yang akan diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi token. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi token yang direkomendasikan secara default akan digunakan. Defaultnya None. - aggregation_strategy (
"TokenClassificationAggregationStrategy", opsional) — Strategi yang digunakan untuk menggabungkan token berdasarkan prediksi model - ignore_labels (
list[str, opsional) — Daftar label yang akan diabaikan - stride (
int, opsional) — Jumlah token yang tumpang tindih antar-chunk saat teks input dipecah.
Mengembalikan
list[TokenClassificationOutputElement]
Daftar item TokenClassificationOutputElement yang berisi grup entitas, skor kepercayaan, kata, serta indeks awal dan akhir.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi token pada teks yang diberikan. Biasanya digunakan untuk parsing kalimat, baik secara gramatikal maupun Named Entity Recognition (NER) untuk memahami kata kunci yang terkandung dalam teks.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.token_classification("My name is Sarah Jessica Parker but you can call me Jessica")
[
TokenClassificationOutputElement(
entity_group='PER',
score=0.9971321225166321,
word='Sarah Jessica Parker',
start=11,
end=31,
),
TokenClassificationOutputElement(
entity_group='PER',
score=0.9773476123809814,
word='Jessica',
start=52,
end=59,
)
]terjemahan
< source >( text: strmodel: str | None = Nonesrc_lang: str | None = Nonetgt_lang: str | None = Noneclean_up_tokenization_spaces: bool | None = Nonetruncation: typing.Optional[ForwardRef('TranslationTruncationStrategy')] = Nonegenerate_parameters: dict[str, typing.Any] | None = None ) → TranslationOutput
Parameter
- text (
str) — String yang akan diterjemahkan. - model (
str, opsional) — Model yang akan digunakan untuk tugas terjemahan. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model terjemahan yang direkomendasikan secara default akan digunakan. Defaultnya None. - src_lang (
str, opsional) — Bahasa sumber dari teks. Wajib untuk model yang dapat menerjemahkan dari beberapa bahasa. - tgt_lang (
str, opsional) — Bahasa target untuk penerjemahan. Wajib untuk model yang dapat menerjemahkan ke beberapa bahasa. - clean_up_tokenization_spaces (
bool, opsional) — Apakah akan membersihkan spasi tambahan yang mungkin ada dalam teks output. - truncation (
"TranslationTruncationStrategy", opsional) — Strategi pemotongan (truncation) yang akan digunakan. - generate_parameters (
dict[str, Any], opsional) — Parametrisasi tambahan untuk algoritma generasi teks.
Mengembalikan
Teks terjemahan yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError atau ValueError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.ValueError— Jika hanya salah satu dari argumensrc_langdantgt_langyang diberikan.
Mengubah teks dari satu bahasa ke bahasa lain.
Lihat https://huggingface.co/tasks/translation untuk informasi lebih lanjut tentang cara memilih model terbaik untuk
kasus penggunaan spesifik Anda. Bahasa sumber dan target biasanya bergantung pada model.
Namun, dimungkinkan untuk menentukan bahasa sumber dan target untuk model tertentu. Jika Anda bekerja dengan salah satu model ini,
Anda dapat menggunakan argumen src_lang dan tgt_lang untuk meneruskan informasi yang relevan.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.translation("My name is Wolfgang and I live in Berlin")
'Mein Name ist Wolfgang und ich lebe in Berlin.'
>>> client.translation("My name is Wolfgang and I live in Berlin", model="Helsinki-NLP/opus-mt-en-fr")
TranslationOutput(translation_text='Je m'appelle Wolfgang et je vis à Berlin.')visual_question_answering
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]question: strmodel: str | None = Nonetop_k: int | None = None ) → list[VisualQuestionAnsweringOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk konteks. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - question (
str) — Pertanyaan yang akan dijawab. - model (
str, opsional) — Model yang akan digunakan untuk tugas visual question answering. Bisa berupa model ID yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model visual question answering yang direkomendasikan secara default akan digunakan. Defaultnya None. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Perhatikan bahwa kami mengembalikan jawaban yang lebih sedikit dari topk jika tidak ada cukup opsi yang tersedia dalam konteks.
Mengembalikan
list[VisualQuestionAnsweringOutputElement]
daftar item VisualQuestionAnsweringOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
InferenceTimeoutError— Jika model tidak tersedia atau permintaan melebihi batas waktu.HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Menjawab pertanyaan terbuka berdasarkan gambar.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.visual_question_answering(
... image="https://huggingface.co/datasets/mishig/sample_images/resolve/main/tiger.jpg",
... question="What is the animal doing?"
... )
[
VisualQuestionAnsweringOutputElement(score=0.778609573841095, answer='laying down'),
VisualQuestionAnsweringOutputElement(score=0.6957435607910156, answer='sitting'),
]zero_shot_classification
< source >( text: strcandidate_labels: listmulti_label: bool | None = Falsehypothesis_template: str | None = Nonemodel: str | None = None ) → list[ZeroShotClassificationOutputElement]
Parameter
- text (
str) — Teks input untuk diklasifikasikan. - candidate_labels (
list[str]) — Set label kelas yang mungkin untuk mengklasifikasikan teks. - multi_label (
bool, opsional) — Apakah beberapa label kandidat dapat bernilai benar. Jika false, skor dinormalisasi sehingga jumlah kemungkinan label untuk setiap urutan adalah 1. Jika true, label dianggap independen dan probabilitas dinormalisasi untuk setiap kandidat. - hypothesis_template (
str, opsional) — Kalimat yang digunakan bersamacandidate_labelsuntuk mencoba klasifikasi teks dengan mengganti placeholder dengan label kandidat. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Jika tidak disediakan, model klasifikasi zero-shot yang direkomendasikan secara default akan digunakan.
Mengembalikan
list[ZeroShotClassificationOutputElement]
Daftar item ZeroShotClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Berikan teks dan seperangkat label kandidat sebagai input untuk mengklasifikasikan teks input tersebut.
Contoh dengan multi_label=False:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> text = (
... "A new model offers an explanation for how the Galilean satellites formed around the solar system's"
... "largest world. Konstantin Batygin did not set out to solve one of the solar system's most puzzling"
... " mysteries when he went for a run up a hill in Nice, France."
... )
>>> labels = ["space & cosmos", "scientific discovery", "microbiology", "robots", "archeology"]
>>> client.zero_shot_classification(text, labels)
[
ZeroShotClassificationOutputElement(label='scientific discovery', score=0.7961668968200684),
ZeroShotClassificationOutputElement(label='space & cosmos', score=0.18570658564567566),
ZeroShotClassificationOutputElement(label='microbiology', score=0.00730885099619627),
ZeroShotClassificationOutputElement(label='archeology', score=0.006258360575884581),
ZeroShotClassificationOutputElement(label='robots', score=0.004559356719255447),
]
>>> client.zero_shot_classification(text, labels, multi_label=True)
[
ZeroShotClassificationOutputElement(label='scientific discovery', score=0.9829297661781311),
ZeroShotClassificationOutputElement(label='space & cosmos', score=0.755190908908844),
ZeroShotClassificationOutputElement(label='microbiology', score=0.0005462635890580714),
ZeroShotClassificationOutputElement(label='archeology', score=0.00047131875180639327),
ZeroShotClassificationOutputElement(label='robots', score=0.00030448526376858354),
]Contoh dengan multi_label=True dan hypothesis_template kustom:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.zero_shot_classification(
... text="I really like our dinner and I'm very happy. I don't like the weather though.",
... candidate_labels=["positive", "negative", "pessimistic", "optimistic"],
... multi_label=True,
... hypothesis_template="This text is {} towards the weather"
... )
[
ZeroShotClassificationOutputElement(label='negative', score=0.9231801629066467),
ZeroShotClassificationOutputElement(label='pessimistic', score=0.8760990500450134),
ZeroShotClassificationOutputElement(label='optimistic', score=0.0008674879791215062),
ZeroShotClassificationOutputElement(label='positive', score=0.0005250611575320363)
]zero_shot_image_classification
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]candidate_labels: listmodel: str | None = Nonehypothesis_template: str | None = None ) → list[ZeroShotImageClassificationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk dicaption. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - candidate_labels (
list[str]) — Label kandidat untuk gambar ini - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Jika tidak disediakan, model klasifikasi gambar zero-shot yang direkomendasikan secara default akan digunakan. - hypothesis_template (
str, opsional) — Kalimat yang digunakan bersamacandidate_labelsuntuk mencoba klasifikasi gambar dengan mengganti placeholder dengan label kandidat.
Mengembalikan
list[ZeroShotImageClassificationOutputElement]
Daftar item ZeroShotImageClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Berikan gambar input dan label teks untuk memprediksi label teks untuk gambar tersebut.
Contoh:
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient()
>>> client.zero_shot_image_classification(
... "https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg",
... candidate_labels=["dog", "cat", "horse"],
... )
[ZeroShotImageClassificationOutputElement(label='dog', score=0.956),...]Klien Inferensi Asinkron
Versi asinkron dari klien juga disediakan, berdasarkan asyncio dan httpx2.
kelas huggingface_hub.AsyncInferenceClient
< source >( model: str | None = Noneprovider: typing.Union[typing.Literal['baseten', 'cerebras', 'cohere', 'deepinfra', 'fal-ai', 'featherless-ai', 'fireworks-ai', 'groq', 'hf-inference', 'novita', 'nscale', 'openai', 'ovhcloud', 'publicai', 'replicate', 'scaleway', 'together', 'wavespeed', 'zai-org'], typing.Literal['auto'], NoneType] = Nonetoken: str | None = Nonetimeout: float | None = Noneheaders: dict[str, str] | None = Nonecookies: dict[str, str] | None = Nonebill_to: str | None = Nonebase_url: str | None = Noneapi_key: str | None = None )
Parameter
- model (
str,optional) — Model yang akan digunakan untuk menjalankan inferensi. Bisa berupa id model yang dihosting di Hugging Face Hub, misalnyameta-llama/Meta-Llama-3-8B-Instructatau URL ke Inference Endpoint yang telah di-deploy. Defaultnya None, di mana model yang direkomendasikan akan dipilih secara otomatis untuk tugas tersebut. Catatan: untuk kompatibilitas yang lebih baik dengan klien OpenAI,modeltelah di-alias sebagaibase_url. Kedua argumen ini saling eksklusif. Jika URL diteruskan sebagaimodelataubase_urluntuk chat completion, suffix path(/v1)/chat/completionsakan ditambahkan ke URL tersebut. - provider (
str, opsional) — Nama provider yang akan digunakan untuk inferensi. Bisa berupa"baseten","cerebras","cohere","deepinfra","fal-ai","featherless-ai","fireworks-ai","groq","hf-inference","novita","nscale","openai","ovhcloud","publicai","replicate","scaleway","together","wavespeed"atau"zai-org". Nilai defaultnya adalah “auto”: perutean otomatis, yang secara default memilih provider “fastest”; Anda dapat mengubah urutan provider menjadi “cheapest” atau “preferred” di https://hf.co/settings/inference-providers. Jika model berupa URL ataubase_urldiberikan, makaprovidertidak digunakan. - token (
str, opsional) — Token Hugging Face. Akan menggunakan token yang disimpan secara lokal jika tidak diberikan. Catatan: untuk kompatibilitas yang lebih baik dengan klien OpenAI,tokentelah diberi alias sebagaiapi_key. Kedua argumen ini saling eksklusif dan memiliki perilaku yang persis sama. - timeout (
float,optional) — Jumlah detik maksimum untuk menunggu respons dari server. Nilainya secara default None, yang berarti akan terus berulang hingga server tersedia. - headers (
dict[str, str],optional) — Header tambahan untuk dikirim ke server. Secara default, hanya header authorization dan user-agent yang dikirim. Nilai dalam kamus ini akan menimpa nilai default. - bill_to (
str,optional) — Akun penagihan yang akan digunakan untuk permintaan. Secara default, permintaan ditagihkan ke akun pengguna. Permintaan hanya dapat ditagihkan ke organisasi yang menjadi anggota pengguna dan yang telah berlangganan Enterprise Hub. - cookies (
dict[str, str],optional) — Cookie tambahan untuk dikirim ke server. - base_url (
str,optional) — URL dasar untuk menjalankan inferensi. Ini adalah argumen duplikat darimodelagar InferenceClient mengikuti pola yang sama dengan klienopenai.OpenAI. Tidak dapat digunakan jikamodeldisetel. Nilainya default adalah None. - api_key (
str,optional) — Token yang digunakan untuk autentikasi. Ini adalah argumen duplikat daritokenagar InferenceClient mengikuti pola yang sama dengan klienopenai.OpenAI. Tidak dapat digunakan jikatokendisetel. Defaultnya None.
Inisialisasi Inference Client baru.
InferenceClient bertujuan untuk memberikan pengalaman yang terpadu dalam melakukan inferensi. Klien ini dapat digunakan secara mulus dengan Inference API (gratis), Inference Endpoints yang di-host sendiri, atau Inference Providers pihak ketiga.
klasifikasi_audio
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonetop_k: int | None = Nonefunction_to_apply: typing.Optional[ForwardRef('AudioClassificationOutputTransform')] = None ) → list[AudioClassificationOutputElement]
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten audio yang akan diklasifikasikan. Dapat berupa byte audio mentah, file audio lokal, atau URL yang menunjuk ke file audio.
- model (
str, opsional) — Model yang akan digunakan untuk klasifikasi audio. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk klasifikasi audio akan digunakan. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi. - function_to_apply (
"AudioClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor.
Mengembalikan
list[AudioClassificationOutputElement]
Daftar item AudioClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi audio pada konten audio yang disediakan.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.audio_classification("audio.flac")
[
AudioClassificationOutputElement(score=0.4976358711719513, label='hap'),
AudioClassificationOutputElement(score=0.3677836060523987, label='neu'),
...
]audio_to_audio
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = None ) → list[AudioToAudioOutputElement]
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten audio untuk model. Dapat berupa byte audio mentah, file audio lokal, atau URL yang menunjuk ke file audio.
- model (
str, opsional) — Model dapat berupa model apa pun yang menerima file audio dan mengembalikan file audio lain. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model rekomendasi default untuk audio_to_audio akan digunakan.
Mengembalikan
list[AudioToAudioOutputElement]
Daftar item AudioToAudioOutputElement yang berisi label audio, content-type, dan konten audio dalam blob.
Membuang
InferenceTimeoutError atau HfHubHTTPError
InferenceTimeoutError— Jika model tidak tersedia atau permintaan melebihi batas waktu.HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Melakukan beberapa tugas terkait audio-ke-audio tergantung pada model (misalnya: peningkatan ucapan, pemisahan sumber).
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> audio_output = await client.audio_to_audio("audio.flac")
>>> async for i, item in enumerate(audio_output):
>>> with open(f"output_{i}.flac", "wb") as f:
f.write(item.blob)automatic_speech_recognition
< source >( audio: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Noneextra_body: dict | None = None ) → AutomaticSpeechRecognitionOutput
Parameter
- audio (Union[str, Path, bytes, BinaryIO]) — Konten yang akan ditranskripsi. Dapat berupa byte audio mentah, file audio lokal, atau URL ke file audio.
- model (
str, opsional) — Model yang akan digunakan untuk ASR. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk ASR akan digunakan. - extra_body (
dict, opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
Item yang berisi teks transkripsi dan, secara opsional, potongan timestamp.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan pengenalan ucapan otomatis (ASR atau audio-ke-teks) pada konten audio yang diberikan.
chat_completion
< source >( messages: listmodel: str | None = Nonestream: bool = Falsefrequency_penalty: float | None = Nonelogit_bias: list[float] | None = Nonelogprobs: bool | None = Nonemax_tokens: int | None = Nonen: int | None = Nonepresence_penalty: float | None = Noneresponse_format: typing.Union[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatText, huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatJSONSchema, huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputResponseFormatJSONObject, NoneType] = Noneseed: int | None = Nonestop: list[str] | None = Nonestream_options: huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputStreamOptions | None = Nonetemperature: float | None = Nonetool_choice: typing.Union[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputToolChoiceClass, ForwardRef('ChatCompletionInputToolChoiceEnum'), NoneType] = Nonetool_prompt: str | None = Nonetools: list[huggingface_hub.inference._generated.types.chat_completion.ChatCompletionInputTool] | None = Nonetop_logprobs: int | None = Nonetop_p: float | None = Noneextra_body: dict | None = None ) → ChatCompletionOutput or Iterable of ChatCompletionStreamOutput
Parameter
- messages (List of ChatCompletionInputMessage) — Riwayat percakapan yang terdiri dari pasangan peran dan konten.
- model (
str, opsional) — Model yang akan digunakan untuk chat-completion. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk text-generation berbasis chat akan digunakan. Lihat https://huggingface.co/tasks/text-generation untuk detail lebih lanjut. Jikamodeladalah ID model, nilai tersebut diteruskan ke server sebagai parametermodel. Jika Anda ingin mendefinisikan URL kustom sambil mengaturmodeldi payload permintaan, Anda harus mengaturbase_urlsaat menginisialisasi InferenceClient. - frequency_penalty (
float, opsional) — Memberikan penalti pada token baru berdasarkan frekuensi yang sudah ada dalam teks sejauh ini. Rentang: [-2.0, 2.0]. Bawaan: 0.0. - logit_bias (
list[float], opsional) — Menyesuaikan kemungkinan token tertentu muncul dalam output yang dihasilkan. - logprobs (
bool, opsional) — Apakah akan mengembalikan log probabilitas dari token output atau tidak. Jika true, mengembalikan log probabilitas dari setiap token output yang dikembalikan dalam konten pesan. - max_tokens (
int, opsional) — Jumlah maksimum token yang diizinkan dalam respons. Bawaan adalah 100. - n (
int, opsional) — Jumlah penyelesaian yang akan dihasilkan untuk setiap prompt. - presence_penalty (
float, opsional) — Angka antara -2.0 dan 2.0. Nilai positif memberikan penalti pada token baru berdasarkan apakah token tersebut muncul dalam teks sejauh ini, sehingga meningkatkan kemungkinan model untuk membahas topik baru. - response_format (
ChatCompletionInputGrammarType(), opsional) — Kendala grammar. Bisa berupa JSONSchema atau regex. - seed (Opsional
int, opsional) — Seed untuk alur kontrol yang dapat direproduksi. Bawaan adalah None. - stop (
list[str], opsional) — Hingga empat string yang memicu akhir respons. Nilai defaultnya adalah None. - stream (
bool, opsional) — Aktifkan streaming respons secara real-time. Defaultnya False. - stream_options (ChatCompletionInputStreamOptions, opsional) — Opsi untuk streaming penyelesaian.
- temperature (
float, opsional) — Mengontrol tingkat keacakan dari hasil generasi. Nilai yang lebih rendah memastikan kelengkapan yang kurang acak. Rentang: [0, 2]. Bawaan: 1.0. - top_logprobs (
int, opsional) — Bilangan bulat antara 0 dan 5 yang menentukan jumlah token paling mungkin yang akan dikembalikan pada setiap posisi token, masing-masing dengan log probabilitas terkait. logprobs harus diatur ke true jika parameter ini digunakan. - top_p (
float, opsional) — Fraksi kata-kata berikutnya yang paling mungkin untuk disampelkan. Harus berada di antara 0 dan 1. Bawaan adalah 1.0. - tool_choice (ChatCompletionInputToolChoiceClass atau
ChatCompletionInputToolChoiceEnum(), opsional) — Alat yang akan digunakan untuk penyelesaian. Bawaan adalah “auto”. - tool_prompt (
str, opsional) — Prompt yang akan ditambahkan sebelum tools. - tools (List of ChatCompletionInputTool, opsional) — Daftar tool yang dapat dipanggil oleh model. Saat ini, hanya fungsi yang didukung sebagai tool. Gunakan ini untuk menyediakan daftar fungsi yang dapat menghasilkan input JSON oleh model.
- extra_body (
dict, opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
ChatCompletionOutput atau Iterable dari ChatCompletionStreamOutput
Teks yang dihasilkan yang dikembalikan dari server:
- Jika
stream=False, teks yang dihasilkan dikembalikan sebagai ChatCompletionOutput (default). - Jika
stream=True, teks yang dihasilkan dikembalikan per token sebagai rangkaian ChatCompletionStreamOutput.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Metode untuk menyelesaikan percakapan menggunakan model bahasa yang ditentukan.
Metode
client.chat_completionmemiliki aliasclient.chat.completions.createuntuk kompatibilitas dengan klien OpenAI. Input dan output sama persis, dan penggunaan sintaks mana pun akan menghasilkan hasil yang sama. Lihat Panduan Inferensi untuk detail lebih lanjut tentang kompatibilitas OpenAI.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> messages = [{"role": "user", "content": "What is the capital of France?"}]
>>> client = AsyncInferenceClient("meta-llama/Meta-Llama-3-8B-Instruct")
>>> await client.chat_completion(messages, max_tokens=100)
ChatCompletionOutput(
choices=[
ChatCompletionOutputComplete(
finish_reason='eos_token',
index=0,
message=ChatCompletionOutputMessage(
role='assistant',
content='The capital of France is Paris.',
name=None,
tool_calls=None
),
logprobs=None
)
],
created=1719907176,
id='',
model='meta-llama/Meta-Llama-3-8B-Instruct',
object='text_completion',
system_fingerprint='2.0.4-sha-f426a33',
usage=ChatCompletionOutputUsage(
completion_tokens=8,
prompt_tokens=17,
total_tokens=25
)
)Contoh menggunakan streaming:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> messages = [{"role": "user", "content": "What is the capital of France?"}]
>>> client = AsyncInferenceClient("meta-llama/Meta-Llama-3-8B-Instruct")
>>> async for token in await client.chat_completion(messages, max_tokens=10, stream=True):
... print(token)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content='The', role='assistant'), index=0, finish_reason=None)], created=1710498504)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content=' capital', role='assistant'), index=0, finish_reason=None)], created=1710498504)
(...)
ChatCompletionStreamOutput(choices=[ChatCompletionStreamOutputChoice(delta=ChatCompletionStreamOutputDelta(content=' may', role='assistant'), index=0, finish_reason=None)], created=1710498504)Contoh menggunakan sintaks OpenAI:
# Must be run in an async context
# instead of `from openai import OpenAI`
from huggingface_hub import AsyncInferenceClient
# instead of `client = OpenAI(...)`
client = AsyncInferenceClient(
base_url=...,
api_key=...,
)
output = await client.chat.completions.create(
model="meta-llama/Meta-Llama-3-8B-Instruct",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Count to 10"},
],
stream=True,
max_tokens=1024,
)
for chunk in output:
print(chunk.choices[0].delta.content)Contoh penggunaan penyedia pihak ketiga secara langsung dengan parameter tambahan (spesifik penyedia). Penggunaan akan ditagihkan ke akun Together AI Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="together", # Use Together AI provider
... api_key="<together_api_key>", # Pass your Together API key directly
... )
>>> client.chat_completion(
... model="meta-llama/Meta-Llama-3-8B-Instruct",
... messages=[{"role": "user", "content": "What is the capital of France?"}],
... extra_body={"safety_model": "Meta-Llama/Llama-Guard-7b"},
... )Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="novita", # Use Novita provider
... api_key="hf_...", # Pass your HF token
... )
>>> client.chat_completion(
... model="meta-llama/Meta-Llama-3-8B-Instruct",
... messages=[{"role": "user", "content": "What is the capital of France?"}],
... )Contoh menggunakan Gambar + Teks sebagai input:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
# provide a remote URL
>>> image_url ="https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"
# or a base64-encoded image
>>> image_path = "/path/to/image.jpeg"
>>> with open(image_path, "rb") as f:
... base64_image = base64.b64encode(f.read()).decode("utf-8")
>>> image_url = f"data:image/jpeg;base64,{base64_image}"
>>> client = AsyncInferenceClient("meta-llama/Llama-3.2-11B-Vision-Instruct")
>>> output = await client.chat.completions.create(
... messages=[
... {
... "role": "user",
... "content": [
... {
... "type": "image_url",
... "image_url": {"url": image_url},
... },
... {
... "type": "text",
... "text": "Describe this image in one sentence.",
... },
... ],
... },
... ],
... )
>>> output
The image depicts the iconic Statue of Liberty situated in New York Harbor, New York, on a clear day.Contoh menggunakan tools:
# Must be run in an async context
>>> client = AsyncInferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> messages = [
... {
... "role": "system",
... "content": "Don't make assumptions about what values to plug into functions. Ask for clarification if a user request is ambiguous.",
... },
... {
... "role": "user",
... "content": "What's the weather like the next 3 days in San Francisco, CA?",
... },
... ]
>>> tools = [
... {
... "type": "function",
... "function": {
... "name": "get_current_weather",
... "description": "Get the current weather",
... "parameters": {
... "type": "object",
... "properties": {
... "location": {
... "type": "string",
... "description": "The city and state, e.g. San Francisco, CA",
... },
... "format": {
... "type": "string",
... "enum": ["celsius", "fahrenheit"],
... "description": "The temperature unit to use. Infer this from the users location.",
... },
... },
... "required": ["location", "format"],
... },
... },
... },
... {
... "type": "function",
... "function": {
... "name": "get_n_day_weather_forecast",
... "description": "Get an N-day weather forecast",
... "parameters": {
... "type": "object",
... "properties": {
... "location": {
... "type": "string",
... "description": "The city and state, e.g. San Francisco, CA",
... },
... "format": {
... "type": "string",
... "enum": ["celsius", "fahrenheit"],
... "description": "The temperature unit to use. Infer this from the users location.",
... },
... "num_days": {
... "type": "integer",
... "description": "The number of days to forecast",
... },
... },
... "required": ["location", "format", "num_days"],
... },
... },
... },
... ]
>>> response = await client.chat_completion(
... model="meta-llama/Meta-Llama-3-70B-Instruct",
... messages=messages,
... tools=tools,
... tool_choice="auto",
... max_tokens=500,
... )
>>> response.choices[0].message.tool_calls[0].function
ChatCompletionOutputFunctionDefinition(
arguments={
'location': 'San Francisco, CA',
'format': 'fahrenheit',
'num_days': 3
},
name='get_n_day_weather_forecast',
description=None
)Contoh penggunaan response_format:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> messages = [
... {
... "role": "user",
... "content": "I saw a puppy a cat and a raccoon during my bike ride in the park. What did I see and when?",
... },
... ]
>>> response_format = {
... "type": "json",
... "value": {
... "properties": {
... "location": {"type": "string"},
... "activity": {"type": "string"},
... "animals_seen": {"type": "integer", "minimum": 1, "maximum": 5},
... "animals": {"type": "array", "items": {"type": "string"}},
... },
... "required": ["location", "activity", "animals_seen", "animals"],
... },
... }
>>> response = await client.chat_completion(
... messages=messages,
... response_format=response_format,
... max_tokens=500,
... )
>>> response.choices[0].message.content
'{
y": "bike ride",
": ["puppy", "cat", "raccoon"],
_seen": 3,
n": "park"}'Tutup klien.
Metode ini dipanggil secara otomatis saat menggunakan klien sebagai context manager.
document_question_answering
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]question: strmodel: str | None = Nonedoc_stride: int | None = Nonehandle_impossible_answer: bool | None = Nonelang: str | None = Nonemax_answer_len: int | None = Nonemax_question_len: int | None = Nonemax_seq_len: int | None = Nonetop_k: int | None = Noneword_boxes: list[list[float] | str] | None = None ) → list[DocumentQuestionAnsweringOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO]) — Gambar input untuk konteks. Bisa berupa byte mentah, file gambar, atau URL ke gambar online. - question (
str) — Pertanyaan yang akan dijawab. - model (
str, opsional) — Model yang akan digunakan untuk tugas document question answering. Bisa berupa model ID yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model document question answering yang direkomendasikan secara default akan digunakan. Defaultnya None. - doc_stride (
int, opsional) — Jika kata-kata dalam dokumen terlalu panjang untuk muat bersama pertanyaan bagi model, dokumen akan dipecah menjadi beberapa bagian dengan tumpang tindih. Argumen ini mengontrol ukuran tumpang tindih tersebut. - handle_impossible_answer (
bool, opsional) — Apakah menerima impossible sebagai jawaban - lang (
str, opsional) — Bahasa yang digunakan saat menjalankan OCR. Bawaan adalah english. - max_answer_len (
int, opsional) — Panjang maksimum dari jawaban yang diprediksi (misalnya, hanya jawaban dengan panjang yang lebih pendek yang dipertimbangkan). - max_question_len (
int, opsional) — Panjang maksimum pertanyaan setelah tokenisasi. Akan dipangkas jika diperlukan. - max_seq_len (
int, opsional) — Panjang maksimum kalimat total (konteks + pertanyaan) dalam token untuk setiap chunk yang diteruskan ke model. Konteks akan dipecah menjadi beberapa chunk (menggunakan doc_stride sebagai overlap) jika diperlukan. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Dapat mengembalikan kurang dari top_k jawaban jika tidak ada cukup opsi yang tersedia dalam konteks. - word_boxes (
list[Union[list[float], str, opsional) — Daftar kata dan kotak pembatas (dinormalisasi 0->1000). Jika disediakan, inferensi akan melewati langkah OCR dan menggunakan kotak pembatas yang disediakan sebagai gantinya.
Mengembalikan
list[DocumentQuestionAnsweringOutputElement]
daftar item DocumentQuestionAnsweringOutputElement yang berisi label prediksi, probabilitas terkait, id kata, dan nomor halaman.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Jawab pertanyaan pada gambar dokumen.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.document_question_answering(image="https://huggingface.co/spaces/impira/docquery/resolve/2359223c1837a7587402bda0f2643382a6eefeab/invoice.png", question="What is the invoice number?")
[DocumentQuestionAnsweringOutputElement(answer='us-001', end=16, score=0.9999666213989258, start=16)]feature_extraction
< source >( text: str | list[str]normalize: bool | None = Noneprompt_name: str | None = Nonetruncate: bool | None = Nonetruncation_direction: typing.Optional[typing.Literal['left', 'right']] = Nonedimensions: int | None = Noneencoding_format: typing.Optional[typing.Literal['float', 'base64']] = Nonemodel: str | None = None ) → np.ndarray
Parameter
- text (str atau list[str]) — Teks atau daftar teks yang akan di-embed.
- model (str, opsional) — Model yang akan digunakan untuk tugas ekstraksi fitur. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model ekstraksi fitur yang direkomendasikan secara default akan digunakan. Defaultnya None.
- normalize (bool, opsional) — Apakah akan menormalisasi embedding atau tidak. Hanya tersedia pada server yang didukung oleh Text-Embedding-Inference.
- prompt_name (str, opsional) —
Nama prompt yang harus digunakan untuk encoding. Jika tidak diset, tidak ada prompt yang akan diterapkan.
Harus menjadi kunci dalam kamus prompts konfigurasi Sentence Transformers.
Sebagai contoh, jika
prompt_nameadalah “query” danpromptsadalah {“query”: “query: ”,…}, maka kalimat “What is the capital of France?” akan di-encode sebagai “query: What is the capital of France?” karena teks prompt akan ditambahkan di depan teks apa pun yang akan di-encode. - truncate (bool, opsional) — Apakah akan memotong (truncate) embedding atau tidak. Hanya tersedia pada server yang didukung oleh Text-Embedding-Inference.
- truncation_direction (Literal[“left”, “right”], opsional) — Sisi mana dari input yang harus dipangkas ketika truncate=True diteruskan.
- dimensions (int, opsional) — Jumlah dimensi yang harus dimiliki embedding output yang dihasilkan. Hanya tersedia pada endpoint embedding yang kompatibel dengan OpenAI.
- encoding_format (Literal[“float”, “base64”], opsional) — Format dari embedding output. Bisa berupa “float” atau “base64”. Hanya tersedia pada endpoint embedding yang kompatibel dengan OpenAI.
Mengembalikan
np.ndarray
Embedding yang merepresentasikan teks input sebagai array numpy float32.
Membuang
[InferenceTimeoutError] atau [HfHubHTTPError]
- [InferenceTimeoutError] — Jika model tidak tersedia atau permintaan melebihi batas waktu.
- [HfHubHTTPError] — Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Generate embeddings untuk teks atau batch teks tertentu.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.feature_extraction("Hi, who are you?")
array([[ 2.424802 , 2.93384 , 1.1750331 , ..., 1.240499, -0.13776633, -0.7889173 ],
[-0.42943227, -0.6364878 , -1.693462 , ..., 0.41978157, -2.4336355 , 0.6162071 ],
...,
[ 0.28552425, -0.928395 , -1.2077185 , ..., 0.76810825, -2.1069427 , 0.6236161 ]], dtype=float32)fill_mask
< source >( text: strmodel: str | None = Nonetargets: list[str] | None = Nonetop_k: int | None = None ) → list[FillMaskOutputElement]
Parameter
- text (
str) — string yang akan diisi, harus berisi token [MASK] (periksa model card untuk nama mask yang tepat). - model (
str, opsional) — Model yang akan digunakan untuk tugas fill mask. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model fill mask yang direkomendasikan secara default akan digunakan. - targets (
list[str, opsional) — Jika diberikan, model akan membatasi skor pada target yang diberikan alih-alih mencari di seluruh kosakata. Jika target yang diberikan tidak ada dalam kosakata model, target tersebut akan ditokenisasi dan token hasil pertama yang dihasilkan akan digunakan (dengan peringatan, dan hal itu mungkin lebih lambat). - top_k (
int, opsional) — Jika diberikan, menimpa jumlah prediksi yang dikembalikan.
Mengembalikan
list[FillMaskOutputElement]
daftar item FillMaskOutputElement yang berisi label prediksi, probabilitas terkait, referensi token, dan teks yang dilengkapi.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Isi lubang dengan kata yang hilang (token, untuk lebih tepatnya).
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.fill_mask("The goal of life is <mask>.")
[
FillMaskOutputElement(score=0.06897063553333282, token=11098, token_str=' happiness', sequence='The goal of life is happiness.'),
FillMaskOutputElement(score=0.06554922461509705, token=45075, token_str=' immortality', sequence='The goal of life is immortality.')
]get_endpoint_info
< source >( model: str | None = None ) → dict[str, Any]
Parameter
- model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None.
Mengembalikan
dict[str, Any]
Informasi tentang endpoint.
Dapatkan informasi tentang endpoint yang di-deploy.
Endpoint ini hanya tersedia pada endpoint yang didukung oleh Text-Generation-Inference (TGI) atau Text-Embedding-Inference (TEI).
Endpoint yang didukung oleh transformers mengembalikan payload kosong.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient("meta-llama/Meta-Llama-3-70B-Instruct")
>>> await client.get_endpoint_info()
{
'model_id': 'meta-llama/Meta-Llama-3-70B-Instruct',
'model_sha': None,
'model_dtype': 'torch.float16',
'model_device_type': 'cuda',
'model_pipeline_tag': None,
'max_concurrent_requests': 128,
'max_best_of': 2,
'max_stop_sequences': 4,
'max_input_length': 8191,
'max_total_tokens': 8192,
'waiting_served_ratio': 0.3,
'max_batch_total_tokens': 1259392,
'max_waiting_tokens': 20,
'max_batch_size': None,
'validation_workers': 32,
'max_client_batch_size': 4,
'version': '2.0.2',
'sha': 'dccab72549635c7eb5ddb17f43f0b7cdff07c214',
'docker_label': 'sha-dccab72'
}health_check
< source >( model: str | None = None ) → bool
Periksa kesehatan endpoint yang telah di-deploy.
Health check hanya tersedia dengan Inference Endpoints yang didukung oleh Text-Generation-Inference (TGI) atau Text-Embedding-Inference (TEI).
klasifikasi_gambar
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonefunction_to_apply: typing.Optional[ForwardRef('ImageClassificationOutputTransform')] = Nonetop_k: int | None = None ) → list[ImageClassificationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar yang akan diklasifikasikan. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk klasifikasi gambar. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk klasifikasi gambar akan digunakan. - function_to_apply (
"ImageClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi.
Mengembalikan
list[ImageClassificationOutputElement]
daftar item ImageClassificationOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi gambar pada gambar yang diberikan menggunakan model yang ditentukan.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.image_classification("https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg")
[ImageClassificationOutputElement(label='Blenheim spaniel', score=0.9779096841812134), ...]segmentasi_gambar
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonemask_threshold: float | None = Noneoverlap_mask_area_threshold: float | None = Nonesubtask: typing.Optional[ForwardRef('ImageSegmentationSubtask')] = Nonethreshold: float | None = None ) → list[ImageSegmentationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar yang akan disegmentasi. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk segmentasi gambar. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk segmentasi gambar akan digunakan. - mask_threshold (
float, opsional) — Ambang batas yang digunakan saat mengubah mask prediksi menjadi nilai biner. - overlap_mask_area_threshold (
float, opsional) — Ambang batas tumpang tindih mask untuk menghilangkan segmen kecil yang tidak terhubung. - subtask (
"ImageSegmentationSubtask", opsional) — Tugas segmentasi yang akan dilakukan, tergantung pada kemampuan model. - threshold (
float, opsional) — Ambang probabilitas untuk menyaring mask prediksi.
Mengembalikan
list[ImageSegmentationOutputElement]
Daftar item ImageSegmentationOutputElement yang berisi masker segmentasi dan atribut terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan segmentasi gambar pada gambar yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.image_segmentation("cat.jpg")
[ImageSegmentationOutputElement(score=0.989008, label='LABEL_184', mask=<PIL.PngImagePlugin.PngImageFile image mode=L size=400x300 at 0x7FDD2B129CC0>), ...]image_to_image
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]prompt: str | None = Nonenegative_prompt: str | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Nonemodel: str | None = Nonetarget_size: huggingface_hub.inference._generated.types.image_to_image.ImageToImageTargetSize | None = None**kwargs ) → Image
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk penerjemahan. Dapat berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - prompt (
str, opsional) — Prompt teks untuk memandu generasi gambar. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan gambar. - num_inference_steps (
int, opsional) — Untuk model difusi. Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Untuk model difusi. Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan gambar yang sangat terkait dengan prompt teks, dengan mengorbankan kualitas gambar yang lebih rendah. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - target_size (
ImageToImageTargetSize, opsional) — Ukuran gambar keluaran dalam piksel. Parameter ini hanya didukung oleh beberapa penyedia dan untuk model tertentu. Parameter ini akan diabaikan jika tidak didukung.
Mengembalikan
Image
Gambar yang diterjemahkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan terjemahan gambar-ke-gambar menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
image_to_text
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = None ) → ImageToTextOutput
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk dicaption. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None.
Mengembalikan
Teks yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Menerima gambar input dan mengembalikan teks.
Model dapat menghasilkan output yang sangat berbeda tergantung pada kasus penggunaan Anda (image captioning, optical character recognition (OCR), Pix2Struct, dll.). Silakan lihat model card untuk mempelajari lebih lanjut tentang spesifikasi model.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.image_to_text("cat.jpg")
'a cat standing in a grassy field '
>>> await client.image_to_text("https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg")
'a dog laying on the grass next to a flower pot 'image_to_video
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Noneprompt: str | None = Nonenegative_prompt: str | None = Nonenum_frames: float | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Noneseed: int | None = Nonetarget_size: huggingface_hub.inference._generated.types.image_to_video.ImageToVideoTargetSize | None = None**kwargs ) → bytes
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk menghasilkan video. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - prompt (
str, opsional) — Prompt teks untuk memandu pembuatan video. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan video. - num_frames (
float, opsional) — Parameter num_frames menentukan berapa banyak frame video yang dihasilkan. - num_inference_steps (
int, opsional) — Untuk model difusi. Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Untuk model difusi. Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan video yang sangat terkait dengan prompt teks, dengan mengorbankan kualitas gambar yang lebih rendah. - seed (
int, opsional) — Seed yang akan digunakan untuk pembuatan video. - target_size (
ImageToVideoTargetSize, opsional) — Ukuran dalam piksel dari bingkai video keluaran. - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan video dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - seed (
int, opsional) — Seed untuk generator angka acak.
Mengembalikan
bytes
Video yang dihasilkan.
Buat video dari gambar input.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> video = await client.image_to_video("cat.jpg", model="Wan-AI/Wan2.2-I2V-A14B", prompt="turn the cat into a tiger")
>>> with open("tiger.mp4", "wb") as f:
... f.write(video)deteksi_objek
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]model: str | None = Nonethreshold: float | None = None ) → list[ObjectDetectionOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar untuk mendeteksi objek. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - model (
str, opsional) — Model yang akan digunakan untuk deteksi objek. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model yang direkomendasikan secara default untuk deteksi objek (DETR) akan digunakan. - threshold (
float, opsional) — Probabilitas yang diperlukan untuk membuat prediksi.
Mengembalikan
list[ObjectDetectionOutputElement]
Daftar item ObjectDetectionOutputElement yang berisi kotak pembatas dan atribut terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError atau ValueError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.ValueError— Jika output permintaan bukan List.
Lakukan deteksi objek pada gambar yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.object_detection("people.jpg")
[ObjectDetectionOutputElement(score=0.9486683011054993, label='person', box=ObjectDetectionBoundingBox(xmin=59, ymin=39, xmax=420, ymax=510)), ...]question_answering
< source >( question: strcontext: strmodel: str | None = Nonealign_to_words: bool | None = Nonedoc_stride: int | None = Nonehandle_impossible_answer: bool | None = Nonemax_answer_len: int | None = Nonemax_question_len: int | None = Nonemax_seq_len: int | None = Nonetop_k: int | None = None ) → Union[QuestionAnsweringOutputElement, listQuestionAnsweringOutputElement]
Parameter
- question (
str) — Pertanyaan yang akan dijawab. - context (
str) — Konteks dari pertanyaan. - model (
str) — Model yang akan digunakan untuk tugas question answering. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. - align_to_words (
bool, opsional) — Mencoba menyelaraskan jawaban dengan kata-kata yang sebenarnya. Meningkatkan kualitas pada bahasa yang dipisahkan oleh spasi. Mungkin berdampak buruk pada bahasa yang tidak dipisahkan oleh spasi (seperti Jepang atau Mandarin) - doc_stride (
int, opsional) — Jika konteks terlalu panjang untuk muat bersama pertanyaan bagi model, konteks tersebut akan dipecah menjadi beberapa chunk dengan beberapa tumpang tindih. Argumen ini mengontrol ukuran tumpang tindih tersebut. - handle_impossible_answer (
bool, opsional) — Apakah menerima "impossible" sebagai jawaban. - max_answer_len (
int, opsional) — Panjang maksimum dari jawaban yang diprediksi (misalnya, hanya jawaban dengan panjang yang lebih pendek yang dipertimbangkan). - max_question_len (
int, opsional) — Panjang maksimum pertanyaan setelah tokenisasi. Akan dipangkas jika diperlukan. - max_seq_len (
int, opsional) — Panjang maksimum kalimat total (konteks + pertanyaan) dalam token untuk setiap chunk yang diteruskan ke model. Konteks akan dipecah menjadi beberapa chunk (menggunakan docStride sebagai overlap) jika diperlukan. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Perhatikan bahwa kami mengembalikan jawaban yang lebih sedikit dari topk jika tidak ada cukup opsi yang tersedia dalam konteks.
Mengembalikan
Union[QuestionAnsweringOutputElement, listQuestionAnsweringOutputElement]
When top_k is 1 or not provided, it returns a single QuestionAnsweringOutputElement.
When top_k is greater than 1, it returns a list of QuestionAnsweringOutputElement.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Ambil jawaban untuk sebuah pertanyaan dari teks yang diberikan.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.question_answering(question="What's my name?", context="My name is Clara and I live in Berkeley.")
QuestionAnsweringOutputElement(answer='Clara', end=16, score=0.9326565265655518, start=11)sentence_similarity
< source >( sentence: strother_sentences: listmodel: str | None = None ) → list[float]
Parameter
- sentence (
str) — Kalimat utama yang akan dibandingkan dengan kalimat lainnya. - other_sentences (
list[str]) — Daftar kalimat untuk dibandingkan. - model (
str, opsional) — Model yang akan digunakan untuk tugas kemiripan kalimat. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model kemiripan kalimat yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
list[float]
Embedding yang mewakili teks input.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Hitung kemiripan semantik antara sebuah kalimat dan daftar kalimat lainnya dengan membandingkan embedding mereka.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.sentence_similarity(
... "Machine learning is so easy.",
... other_sentences=[
... "Deep learning is so straightforward.",
... "This is so difficult, like rocket science.",
... "I can't believe how much I struggled with this.",
... ],
... )
[0.7785726189613342, 0.45876261591911316, 0.2906220555305481]ringkasan
< source >( text: strmodel: str | None = Noneclean_up_tokenization_spaces: bool | None = Nonegenerate_parameters: dict[str, typing.Any] | None = Nonetruncation: typing.Optional[ForwardRef('SummarizationTruncationStrategy')] = None ) → SummarizationOutput
Parameter
- text (
str) — Teks input yang akan diringkas. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model rekomendasi default untuk summarization akan digunakan. - clean_up_tokenization_spaces (
bool, opsional) — Apakah akan membersihkan spasi tambahan yang mungkin ada dalam teks output. - generate_parameters (
dict[str, Any], opsional) — Parametrisasi tambahan untuk algoritma generasi teks. - truncation (
"SummarizationTruncationStrategy", opsional) — Strategi pemotongan yang akan digunakan.
Mengembalikan
Teks ringkasan yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Buat ringkasan dari teks yang diberikan menggunakan model yang ditentukan.
table_question_answering
< source >( table: dictquery: strmodel: str | None = Nonepadding: typing.Optional[ForwardRef('Padding')] = Nonesequential: bool | None = Nonetruncation: bool | None = None ) → TableQuestionAnsweringOutputElement
Parameter
- table (
str) — Tabel data yang direpresentasikan sebagai dict berisi daftar, di mana entri adalah header dan daftar berisi semua nilai; semua daftar harus memiliki ukuran yang sama. - query (
str) — Kueri dalam teks polos yang ingin Anda ajukan ke tabel. - model (
str) — Model yang akan digunakan untuk tugas menjawab pertanyaan tabel. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. - padding (
"Padding", opsional) — Mengaktifkan dan mengontrol padding. - sequential (
bool, opsional) — Apakah melakukan inferensi secara berurutan atau sebagai batch. Batching lebih cepat, tetapi model seperti SQA memerlukan inferensi dilakukan secara berurutan untuk mengekstrak relasi di dalam urutan, mengingat sifat percakapannya. - truncation (
bool, opsional) — Mengaktifkan dan mengontrol pemotongan.
Mengembalikan
output penjawab pertanyaan tabel yang berisi jawaban, koordinat, sel, dan agregator yang digunakan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Ambil jawaban untuk sebuah pertanyaan dari informasi yang diberikan dalam tabel.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> query = "How many stars does the transformers repository have?"
>>> table = {"Repository": ["Transformers", "Datasets", "Tokenizers"], "Stars": ["36542", "4512", "3934"]}
>>> await client.table_question_answering(table, query, model="google/tapas-base-finetuned-wtq")
TableQuestionAnsweringOutputElement(answer='36542', coordinates=[[0, 1]], cells=['36542'], aggregator='AVERAGE')klasifikasi_tabular
< source >( table: dictmodel: str | None = None ) → List
Parameter
- table (
dict[str, Any]) — Kumpulan atribut untuk diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi tabular. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi tabular yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
List
daftar label, satu per baris di tabel awal.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Mengklasifikasikan kategori target (sebuah grup) berdasarkan seperangkat atribut.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> table = {
... "fixed_acidity": ["7.4", "7.8", "10.3"],
... "volatile_acidity": ["0.7", "0.88", "0.32"],
... "citric_acid": ["0", "0", "0.45"],
... "residual_sugar": ["1.9", "2.6", "6.4"],
... "chlorides": ["0.076", "0.098", "0.073"],
... "free_sulfur_dioxide": ["11", "25", "5"],
... "total_sulfur_dioxide": ["34", "67", "13"],
... "density": ["0.9978", "0.9968", "0.9976"],
... "pH": ["3.51", "3.2", "3.23"],
... "sulphates": ["0.56", "0.68", "0.82"],
... "alcohol": ["9.4", "9.8", "12.6"],
... }
>>> await client.tabular_classification(table=table, model="julien-c/wine-quality")
["5", "5", "5"]regresi_tabular
< source >( table: dictmodel: str | None = None ) → List
Parameter
- table (
dict[str, Any]) — Kumpulan atribut yang disimpan dalam tabel. Atribut yang digunakan untuk memprediksi target dapat berupa numerik maupun kategorikal. - model (
str, opsional) — Model yang akan digunakan untuk tugas regresi tabular. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model regresi tabular yang direkomendasikan secara default akan digunakan. Defaultnya None.
Mengembalikan
List
daftar nilai target numerik yang diprediksi.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Memprediksi nilai target numerik berdasarkan seperangkat atribut/fitur dalam tabel.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> table = {
... "Height": ["11.52", "12.48", "12.3778"],
... "Length1": ["23.2", "24", "23.9"],
... "Length2": ["25.4", "26.3", "26.5"],
... "Length3": ["30", "31.2", "31.1"],
... "Species": ["Bream", "Bream", "Bream"],
... "Width": ["4.02", "4.3056", "4.6961"],
... }
>>> await client.tabular_regression(table, model="scikit-learn/Fish-Weight")
[110, 120, 130]klasifikasi_teks
< source >( text: strmodel: str | None = Nonetop_k: int | None = Nonefunction_to_apply: typing.Optional[ForwardRef('TextClassificationOutputTransform')] = None ) → list[TextClassificationOutputElement]
Parameter
- text (
str) — String yang akan diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi teks. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi teks yang direkomendasikan secara default akan digunakan. Defaultnya None. - top_k (
int, opsional) — Jika ditentukan, membatasi output ke K kelas dengan probabilitas tertinggi. - function_to_apply (
"TextClassificationOutputTransform", opsional) — Fungsi yang diterapkan ke output model untuk mengambil skor.
Mengembalikan
list[TextClassificationOutputElement]
daftar item TextClassificationOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi teks (misalnya analisis sentimen) pada teks yang diberikan.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.text_classification("I like you")
[
TextClassificationOutputElement(label='POSITIVE', score=0.9998695850372314),
TextClassificationOutputElement(label='NEGATIVE', score=0.0001304351753788069),
]text_generation
< source >( prompt: strdetails: bool | None = Nonestream: bool | None = Nonemodel: str | None = Noneadapter_id: str | None = Nonebest_of: int | None = Nonedecoder_input_details: bool | None = Nonedo_sample: bool | None = Nonefrequency_penalty: float | None = Nonegrammar: huggingface_hub.inference._generated.types.text_generation.TextGenerationInputGrammarType | None = Nonemax_new_tokens: int | None = Nonerepetition_penalty: float | None = Nonereturn_full_text: bool | None = Noneseed: int | None = Nonestop: list[str] | None = Nonetemperature: float | None = Nonetop_k: int | None = Nonetop_n_tokens: int | None = Nonetop_p: float | None = Nonetruncate: int | None = Nonetypical_p: float | None = Nonewatermark: bool | None = None ) → Union[str, TextGenerationOutput, AsyncIterable[str], AsyncIterable[TextGenerationStreamOutput]]
Parameter
- prompt (
str) — Teks input. - details (
bool, opsional) — Secara default, text_generation mengembalikan string. Berikandetails=Truejika Anda menginginkan output yang detail (token, probabilitas, seed, alasan selesai, dll.). Hanya tersedia untuk model yang berjalan dengan backendtext-generation-inference. - stream (
bool, opsional) — Secara default, text_generation mengembalikan teks hasil generasi secara utuh. Berikanstream=Truejika Anda ingin aliran token yang dikembalikan. Hanya tersedia untuk model yang berjalan dengan backendtext-generation-inference. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Defaultnya adalah None. - adapter_id (
str, opsional) — ID adapter Lora. - best_of (
int, opsional) — Hasilkan best_of urutan dan kembalikan yang memiliki logprobs token tertinggi. - decoder_input_details (
bool, opsional) — Kembalikan logprobs dan id token input decoder. Anda juga harus mengaturdetails=Trueagar ini diperhitungkan. Nilainya secara default adalahFalse. - do_sample (
bool, opsional) — Aktifkan sampling logits - frequency_penalty (
float, opsional) — Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan frekuensi yang sudah ada dalam teks sejauh ini, sehingga mengurangi kemungkinan model mengulang baris yang sama secara verbatim. - grammar (TextGenerationInputGrammarType, opsional) — Kendala tata bahasa. Bisa berupa JSONSchema atau regex.
- max_new_tokens (
int, opsional) — Jumlah maksimum token yang dihasilkan. Bawaan adalah 100. - repetition_penalty (
float, opsional) — Parameter untuk penalti pengulangan. 1.0 berarti tidak ada penalti. Lihat makalah ini untuk detail lebih lanjut. - return_full_text (
bool, opsional) — Apakah prompt akan ditambahkan di depan teks yang dihasilkan - seed (
int, opsional) — Biji acak untuk pengambilan sampel - stop (
list[str], opsional) — Berhenti menghasilkan token jika anggota daristopdihasilkan. - temperature (
float, opsional) — Nilai yang digunakan untuk memodulasi distribusi logits. - top_n_tokens (
int, opsional) — Kembalikan informasi tentangtop_n_tokenstoken yang paling mungkin pada setiap langkah generasi, bukan hanya token yang disampelkan. - top_k (
int, *opsional`) — Jumlah token kosakata dengan probabilitas tertinggi yang dipertahankan untuk penyaringan top-k. - top_p (
float, *optional) -- If set to < 1, only the smallest set of most probable tokens with probabilities that add up totop_p` or higher are kept for generation. - truncate (
int, *optional`) — Memotong token input menjadi ukuran yang ditentukan. - typical_p (
float, *optional`) — Mass Typical Decoding Lihat Typical Decoding for Natural Language Generation untuk informasi lebih lanjut - watermark (
bool, opsional) — Watermarking dengan A Watermark for Large Language Models
Mengembalikan
Union[str, TextGenerationOutput, AsyncIterable[str], AsyncIterable[TextGenerationStreamOutput]]
Teks yang dihasilkan yang dikembalikan dari server:
- Jika
stream=Falsedandetails=False, teks yang dihasilkan dikembalikan sebagaistr(default) - Jika
stream=Truedandetails=False, teks yang dihasilkan dikembalikan per token sebagaiAsyncIterable[str] - Jika
stream=Falsedandetails=True, teks yang dihasilkan dikembalikan dengan detail lebih banyak sebagai TextGenerationOutput - Jika
details=Truedanstream=True, teks yang dihasilkan dikembalikan per token sebagai iterable dari TextGenerationStreamOutput
Membuang
ValidationError atau InferenceTimeoutError atau HfHubHTTPError
ValidationError— Jika nilai input tidak valid. Tidak ada panggilan HTTP yang dibuat ke server.- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Diberikan sebuah prompt, hasilkan teks berikut.
Jika Anda ingin menghasilkan respons dari pesan chat, Anda harus menggunakan metode InferenceClient.chat_completion(). Metode ini menerima daftar pesan alih-alih satu prompt teks tunggal dan menangani templating chat untuk Anda.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
# Case 1: generate text
>>> await client.text_generation("The huggingface_hub library is ", max_new_tokens=12)
'100% open source and built to be easy to use.'
# Case 2: iterate over the generated tokens. Useful for large generation.
>>> async for token in await client.text_generation("The huggingface_hub library is ", max_new_tokens=12, stream=True):
... print(token)
100
%
open
source
and
built
to
be
easy
to
use
.
# Case 3: get more details about the generation process.
>>> await client.text_generation("The huggingface_hub library is ", max_new_tokens=12, details=True)
TextGenerationOutput(
generated_text='100% open source and built to be easy to use.',
details=TextGenerationDetails(
finish_reason='length',
generated_tokens=12,
seed=None,
prefill=[
TextGenerationPrefillOutputToken(id=487, text='The', logprob=None),
TextGenerationPrefillOutputToken(id=53789, text=' hugging', logprob=-13.171875),
(...)
TextGenerationPrefillOutputToken(id=204, text=' ', logprob=-7.0390625)
],
tokens=[
TokenElement(id=1425, text='100', logprob=-1.0175781, special=False),
TokenElement(id=16, text='%', logprob=-0.0463562, special=False),
(...)
TokenElement(id=25, text='.', logprob=-0.5703125, special=False)
],
best_of_sequences=None
)
)
# Case 4: iterate over the generated tokens with more details.
# Last object is more complete, containing the full generated text and the finish reason.
>>> async for details in await client.text_generation("The huggingface_hub library is ", max_new_tokens=12, details=True, stream=True):
... print(details)
...
TextGenerationStreamOutput(token=TokenElement(id=1425, text='100', logprob=-1.0175781, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=16, text='%', logprob=-0.0463562, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=1314, text=' open', logprob=-1.3359375, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=3178, text=' source', logprob=-0.28100586, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=273, text=' and', logprob=-0.5961914, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=3426, text=' built', logprob=-1.9423828, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=271, text=' to', logprob=-1.4121094, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=314, text=' be', logprob=-1.5224609, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=1833, text=' easy', logprob=-2.1132812, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=271, text=' to', logprob=-0.08520508, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(id=745, text=' use', logprob=-0.39453125, special=False), generated_text=None, details=None)
TextGenerationStreamOutput(token=TokenElement(
id=25,
text='.',
logprob=-0.5703125,
special=False),
generated_text='100% open source and built to be easy to use.',
details=TextGenerationStreamOutputStreamDetails(finish_reason='length', generated_tokens=12, seed=None)
)
# Case 5: generate constrained output using grammar
>>> response = await client.text_generation(
... prompt="I saw a puppy a cat and a raccoon during my bike ride in the park",
... model="HuggingFaceH4/zephyr-orpo-141b-A35b-v0.1",
... max_new_tokens=100,
... repetition_penalty=1.3,
... grammar={
... "type": "json",
... "value": {
... "properties": {
... "location": {"type": "string"},
... "activity": {"type": "string"},
... "animals_seen": {"type": "integer", "minimum": 1, "maximum": 5},
... "animals": {"type": "array", "items": {"type": "string"}},
... },
... "required": ["location", "activity", "animals_seen", "animals"],
... },
... },
... )
>>> json.loads(response)
{
"activity": "bike riding",
"animals": ["puppy", "cat", "raccoon"],
"animals_seen": 3,
"location": "park"
}text_to_image
< source >( prompt: strnegative_prompt: str | None = Noneheight: int | None = Nonewidth: int | None = Nonenum_inference_steps: int | None = Noneguidance_scale: float | None = Nonemodel: str | None = Nonescheduler: str | None = Noneseed: int | None = Noneextra_body: dict[str, typing.Any] | None = None ) → Image
Parameter
- prompt (
str) — Prompt untuk menghasilkan gambar. - negative_prompt (
str, opsional) — Satu prompt untuk memandu apa yang TIDAK harus disertakan dalam pembuatan gambar. - height (
int, opsional) — Tinggi gambar keluaran dalam piksel - width (
int, opsional) — Lebar gambar keluaran dalam piksel - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan gambar dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - guidance_scale (
float, opsional) — Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan gambar yang sangat terkait dengan prompt teks, tetapi nilai yang terlalu tinggi dapat menyebabkan saturasi dan artefak lainnya. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model teks-ke-gambar yang direkomendasikan secara default akan digunakan. Defaultnya None. - scheduler (
str, opsional) — Timpa scheduler dengan yang kompatibel. - seed (
int, opsional) — Seed untuk generator angka acak. - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
Image
Gambar yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Buat gambar berdasarkan teks yang diberikan menggunakan model yang ditentukan.
Anda harus menginstal
PILjika ingin bekerja dengan gambar (pip install Pillow).
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> image = await client.text_to_image("An astronaut riding a horse on the moon.")
>>> image.save("astronaut.png")
>>> image = await client.text_to_image(
... "An astronaut riding a horse on the moon.",
... negative_prompt="low resolution, blurry",
... model="stabilityai/stable-diffusion-2-1",
... )
>>> image.save("better_astronaut.png")>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="fal-ai", # Use fal.ai provider
... api_key="fal-ai-api-key", # Pass your fal.ai API key
... )
>>> image = client.text_to_image(
... "A majestic lion in a fantasy forest",
... model="black-forest-labs/FLUX.1-schnell",
... )
>>> image.save("lion.png")Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> image = client.text_to_image(
... "An astronaut riding a horse on the moon.",
... model="black-forest-labs/FLUX.1-dev",
... )
>>> image.save("astronaut.png")Contoh menggunakan penyedia Replicate dengan parameter tambahan
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> image = client.text_to_image(
... "An astronaut riding a horse on the moon.",
... model="black-forest-labs/FLUX.1-schnell",
... extra_body={"output_quality": 100},
... )
>>> image.save("astronaut.png")text_to_speech
< source >( text: strmodel: str | None = Nonedo_sample: bool | None = Noneearly_stopping: typing.Union[bool, ForwardRef('TextToSpeechEarlyStoppingEnum'), NoneType] = Noneepsilon_cutoff: float | None = Noneeta_cutoff: float | None = Nonemax_length: int | None = Nonemax_new_tokens: int | None = Nonemin_length: int | None = Nonemin_new_tokens: int | None = Nonenum_beam_groups: int | None = Nonenum_beams: int | None = Nonepenalty_alpha: float | None = Nonetemperature: float | None = Nonetop_k: int | None = Nonetop_p: float | None = Nonetypical_p: float | None = Noneuse_cache: bool | None = Noneextra_body: dict[str, typing.Any] | None = None ) → bytes
Parameter
- text (
str) — Teks yang akan disintesis. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model text-to-speech yang direkomendasikan secara default akan digunakan. Defaultnya None. - do_sample (
bool, opsional) — Apakah akan menggunakan sampling alih-alih greedy decoding saat menghasilkan token baru. - early_stopping (
Union[bool, "TextToSpeechEarlyStoppingEnum"], opsional) — Mengontrol kondisi penghentian untuk metode berbasis beam. - epsilon_cutoff (
float, opsional) — Jika diatur ke float yang benar-benar berada di antara 0 dan 1, hanya token dengan probabilitas kondisional yang lebih besar dari epsilon_cutoff yang akan diambil sampelnya. Dalam makalah, nilai yang disarankan berkisar dari 3e-4 hingga 9e-4, tergantung pada ukuran model. Lihat Truncation Sampling as Language Model Desmoothing untuk detail lebih lanjut. - eta_cutoff (
float, opsional) — Eta sampling adalah hibrida dari sampling yang secara lokal tipikal dan epsilon sampling. Jika diatur ke float yang benar-benar berada di antara 0 dan 1, sebuah token hanya dipertimbangkan jika nilainya lebih besar dari eta_cutoff atau sqrt(eta_cutoff)- exp(-entropy(softmax(next_token_logits))). Suku terakhir secara intuitif adalah probabilitas token berikutnya yang diharapkan, diskalakan dengan sqrt(eta_cutoff). Dalam makalah, nilai yang disarankan berkisar dari 3e-4 hingga 2e-3, tergantung pada ukuran model. Lihat Truncation Sampling as Language Model Desmoothing untuk detail lebih lanjut.
- max_length (
int, opsional) — Panjang maksimum (dalam token) dari teks yang dihasilkan, termasuk input. - max_new_tokens (
int, opsional) — Jumlah maksimum token yang akan dihasilkan. Menggantikan max_length. - min_length (
int, opsional) — Panjang minimum (dalam token) dari teks yang dihasilkan, termasuk input. - min_new_tokens (
int, opsional) — Jumlah minimum token yang akan dihasilkan. Menggantikan min_length. - num_beam_groups (
int, opsional) — Jumlah grup untuk membagi num_beams guna memastikan keragaman di antara berbagai grup beam. Lihat makalah ini untuk detail lebih lanjut. - num_beams (
int, opsional) — Jumlah beam yang digunakan untuk beam search. - penalty_alpha (
float, opsional) — Nilai ini menyeimbangkan keyakinan model dan penalti degenerasi dalam decoding contrastive search. - temperature (
float, opsional) — Nilai yang digunakan untuk memodulasi probabilitas token berikutnya. - top_k (
int, opsional) — Jumlah token kosakata dengan probabilitas tertinggi yang dipertahankan untuk penyaringan top-k. - top_p (
float, opsional) — Jika diatur ke float < 1, hanya kumpulan token paling probabel terkecil dengan probabilitas yang berjumlah top_p atau lebih tinggi yang dipertahankan untuk generasi. - typical_p (
float, opsional) — Ukuran tipikalitas lokal mengukur seberapa mirip probabilitas kondisional untuk memprediksi token target berikutnya dengan probabilitas kondisional yang diharapkan untuk memprediksi token acak berikutnya, mengingat teks parsial yang sudah dihasilkan. Jika diatur ke float < 1, himpunan terkecil dari token-token yang paling tipikal secara lokal dengan probabilitas yang berjumlah typical_p atau lebih tinggi akan dipertahankan untuk generasi. Lihat makalah ini untuk detail lebih lanjut. - use_cache (
bool, opsional) — Apakah model harus menggunakan perhatian kunci/nilai terakhir yang lalu untuk mempercepat decoding - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
bytes
Audio yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Sintesis audio suara yang mengucapkan teks tertentu.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
# Must be run in an async context
>>> from pathlib import Path
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> audio = await client.text_to_speech("Hello world")
>>> Path("hello_world.flac").write_bytes(audio)Contoh penggunaan penyedia pihak ketiga secara langsung. Penggunaan akan ditagihkan ke akun Replicate Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate",
... api_key="your-replicate-api-key", # Pass your Replicate API key directly
... )
>>> audio = client.text_to_speech(
... text="Hello world",
... model="OuteAI/OuteTTS-0.3-500M",
... )
>>> Path("hello_world.flac").write_bytes(audio)Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate",
... api_key="hf_...", # Pass your HF token
... )
>>> audio =client.text_to_speech(
... text="Hello world",
... model="OuteAI/OuteTTS-0.3-500M",
... )
>>> Path("hello_world.flac").write_bytes(audio)>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Use replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> audio = client.text_to_speech(
... "Hello, my name is Kororo, an awesome text-to-speech model.",
... model="hexgrad/Kokoro-82M",
... extra_body={"voice": "af_nicole"},
... )
>>> Path("hello.flac").write_bytes(audio)Contoh music-gen menggunakan “YuE-s1-7B-anneal-en-cot” di fal.ai
>>> from huggingface_hub import InferenceClient
>>> lyrics = '''
... [verse]
... In the town where I was born
... Lived a man who sailed to sea
... And he told us of his life
... In the land of submarines
... So we sailed on to the sun
... 'Til we found a sea of green
... And we lived beneath the waves
... In our yellow submarine
... [chorus]
... We all live in a yellow submarine
... Yellow submarine, yellow submarine
... We all live in a yellow submarine
... Yellow submarine, yellow submarine
... '''
>>> genres = "pavarotti-style tenor voice"
>>> client = InferenceClient(
... provider="fal-ai",
... model="m-a-p/YuE-s1-7B-anneal-en-cot",
... api_key=...,
... )
>>> audio = client.text_to_speech(lyrics, extra_body={"genres": genres})
>>> with open("output.mp3", "wb") as f:
... f.write(audio)text_to_video
< source >( prompt: strmodel: str | None = Noneguidance_scale: float | None = Nonenegative_prompt: list[str] | None = Nonenum_frames: float | None = Nonenum_inference_steps: int | None = Noneseed: int | None = Noneextra_body: dict[str, typing.Any] | None = None ) → bytes
Parameter
- prompt (
str) — Prompt untuk menghasilkan video. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model text-to-video yang direkomendasikan secara default akan digunakan. Defaultnya None. - guidance_scale (
float, opsional) — Nilai guidance scale yang lebih tinggi mendorong model untuk menghasilkan video yang sangat terkait dengan prompt teks, tetapi nilai yang terlalu tinggi dapat menyebabkan saturasi dan artefak lainnya. - negative_prompt (
list[str], opsional) — Satu atau beberapa prompt untuk mengarahkan apa yang TIDAK boleh disertakan dalam pembuatan video. - num_frames (
float, opsional) — Parameter num_frames menentukan berapa banyak frame video yang dihasilkan. - num_inference_steps (
int, opsional) — Jumlah langkah denoising. Semakin banyak langkah denoising, biasanya menghasilkan video dengan kualitas lebih tinggi, namun dengan biaya inferensi yang lebih lambat. - seed (
int, opsional) — Seed untuk generator angka acak. - extra_body (
dict[str, Any], opsional) — Parameter spesifik penyedia tambahan untuk diteruskan ke model. Lihat dokumentasi penyedia untuk parameter yang didukung.
Mengembalikan
bytes
Video yang dihasilkan.
Buat video berdasarkan teks yang diberikan.
Anda dapat meneruskan parameter spesifik penyedia ke model dengan menggunakan argumen
extra_body.
Contoh:
Contoh penggunaan penyedia pihak ketiga secara langsung. Penggunaan akan ditagihkan ke akun fal.ai Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="fal-ai", # Using fal.ai provider
... api_key="fal-ai-api-key", # Pass your fal.ai API key
... )
>>> video = client.text_to_video(
... "A majestic lion running in a fantasy forest",
... model="tencent/HunyuanVideo",
... )
>>> with open("lion.mp4", "wb") as file:
... file.write(video)Contoh penggunaan penyedia pihak ketiga melalui Hugging Face Routing. Penggunaan akan ditagihkan ke akun Hugging Face Anda.
>>> from huggingface_hub import InferenceClient
>>> client = InferenceClient(
... provider="replicate", # Using replicate provider
... api_key="hf_...", # Pass your HF token
... )
>>> video = client.text_to_video(
... "A cat running in a park",
... model="genmo/mochi-1-preview",
... )
>>> with open("cat.mp4", "wb") as file:
... file.write(video)token_classification
< source >( text: strmodel: str | None = Noneaggregation_strategy: typing.Optional[ForwardRef('TokenClassificationAggregationStrategy')] = Noneignore_labels: list[str] | None = Nonestride: int | None = None ) → list[TokenClassificationOutputElement]
Parameter
- text (
str) — String yang akan diklasifikasikan. - model (
str, opsional) — Model yang akan digunakan untuk tugas klasifikasi token. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model klasifikasi token yang direkomendasikan secara default akan digunakan. Defaultnya None. - aggregation_strategy (
"TokenClassificationAggregationStrategy", opsional) — Strategi yang digunakan untuk menggabungkan token berdasarkan prediksi model - ignore_labels (
list[str, opsional) — Daftar label yang akan diabaikan - stride (
int, opsional) — Jumlah token yang tumpang tindih antar-chunk saat teks input dipecah.
Mengembalikan
list[TokenClassificationOutputElement]
Daftar item TokenClassificationOutputElement yang berisi grup entitas, skor kepercayaan, kata, serta indeks awal dan akhir.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Lakukan klasifikasi token pada teks yang diberikan. Biasanya digunakan untuk parsing kalimat, baik secara gramatikal maupun Named Entity Recognition (NER) untuk memahami kata kunci yang terkandung dalam teks.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.token_classification("My name is Sarah Jessica Parker but you can call me Jessica")
[
TokenClassificationOutputElement(
entity_group='PER',
score=0.9971321225166321,
word='Sarah Jessica Parker',
start=11,
end=31,
),
TokenClassificationOutputElement(
entity_group='PER',
score=0.9773476123809814,
word='Jessica',
start=52,
end=59,
)
]terjemahan
< source >( text: strmodel: str | None = Nonesrc_lang: str | None = Nonetgt_lang: str | None = Noneclean_up_tokenization_spaces: bool | None = Nonetruncation: typing.Optional[ForwardRef('TranslationTruncationStrategy')] = Nonegenerate_parameters: dict[str, typing.Any] | None = None ) → TranslationOutput
Parameter
- text (
str) — String yang akan diterjemahkan. - model (
str, opsional) — Model yang akan digunakan untuk tugas terjemahan. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model terjemahan yang direkomendasikan secara default akan digunakan. Defaultnya None. - src_lang (
str, opsional) — Bahasa sumber dari teks. Wajib untuk model yang dapat menerjemahkan dari beberapa bahasa. - tgt_lang (
str, opsional) — Bahasa target untuk penerjemahan. Wajib untuk model yang dapat menerjemahkan ke beberapa bahasa. - clean_up_tokenization_spaces (
bool, opsional) — Apakah akan membersihkan spasi tambahan yang mungkin ada dalam teks output. - truncation (
"TranslationTruncationStrategy", opsional) — Strategi pemotongan (truncation) yang akan digunakan. - generate_parameters (
dict[str, Any], opsional) — Parametrisasi tambahan untuk algoritma generasi teks.
Mengembalikan
Teks terjemahan yang dihasilkan.
Membuang
InferenceTimeoutError atau HfHubHTTPError atau ValueError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.ValueError— Jika hanya salah satu dari argumensrc_langdantgt_langyang diberikan.
Mengubah teks dari satu bahasa ke bahasa lain.
Lihat https://huggingface.co/tasks/translation untuk informasi lebih lanjut tentang cara memilih model terbaik untuk
kasus penggunaan spesifik Anda. Bahasa sumber dan target biasanya bergantung pada model.
Namun, dimungkinkan untuk menentukan bahasa sumber dan target untuk model tertentu. Jika Anda bekerja dengan salah satu model ini,
Anda dapat menggunakan argumen src_lang dan tgt_lang untuk meneruskan informasi yang relevan.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.translation("My name is Wolfgang and I live in Berlin")
'Mein Name ist Wolfgang und ich lebe in Berlin.'
>>> await client.translation("My name is Wolfgang and I live in Berlin", model="Helsinki-NLP/opus-mt-en-fr")
TranslationOutput(translation_text='Je m'appelle Wolfgang et je vis à Berlin.')visual_question_answering
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]question: strmodel: str | None = Nonetop_k: int | None = None ) → list[VisualQuestionAnsweringOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk konteks. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - question (
str) — Pertanyaan yang akan dijawab. - model (
str, opsional) — Model yang akan digunakan untuk tugas visual question answering. Bisa berupa model ID yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Jika tidak disediakan, model visual question answering yang direkomendasikan secara default akan digunakan. Defaultnya None. - top_k (
int, opsional) — Jumlah jawaban yang akan dikembalikan (dipilih berdasarkan urutan kemungkinan). Perhatikan bahwa kami mengembalikan jawaban yang lebih sedikit dari topk jika tidak ada cukup opsi yang tersedia dalam konteks.
Mengembalikan
list[VisualQuestionAnsweringOutputElement]
daftar item VisualQuestionAnsweringOutputElement yang berisi label prediksi dan probabilitas terkait.
Membuang
InferenceTimeoutError atau HfHubHTTPError
InferenceTimeoutError— Jika model tidak tersedia atau permintaan melebihi batas waktu.HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Menjawab pertanyaan terbuka berdasarkan gambar.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.visual_question_answering(
... image="https://huggingface.co/datasets/mishig/sample_images/resolve/main/tiger.jpg",
... question="What is the animal doing?"
... )
[
VisualQuestionAnsweringOutputElement(score=0.778609573841095, answer='laying down'),
VisualQuestionAnsweringOutputElement(score=0.6957435607910156, answer='sitting'),
]zero_shot_classification
< source >( text: strcandidate_labels: listmulti_label: bool | None = Falsehypothesis_template: str | None = Nonemodel: str | None = None ) → list[ZeroShotClassificationOutputElement]
Parameter
- text (
str) — Teks input untuk diklasifikasikan. - candidate_labels (
list[str]) — Set label kelas yang mungkin untuk mengklasifikasikan teks. - multi_label (
bool, opsional) — Apakah beberapa label kandidat dapat bernilai benar. Jika false, skor dinormalisasi sehingga jumlah kemungkinan label untuk setiap urutan adalah 1. Jika true, label dianggap independen dan probabilitas dinormalisasi untuk setiap kandidat. - hypothesis_template (
str, opsional) — Kalimat yang digunakan bersamacandidate_labelsuntuk mencoba klasifikasi teks dengan mengganti placeholder dengan label kandidat. - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Jika tidak disediakan, model klasifikasi zero-shot yang direkomendasikan secara default akan digunakan.
Mengembalikan
list[ZeroShotClassificationOutputElement]
Daftar item ZeroShotClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Berikan teks dan seperangkat label kandidat sebagai input untuk mengklasifikasikan teks input tersebut.
Contoh dengan multi_label=False:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> text = (
... "A new model offers an explanation for how the Galilean satellites formed around the solar system's"
... "largest world. Konstantin Batygin did not set out to solve one of the solar system's most puzzling"
... " mysteries when he went for a run up a hill in Nice, France."
... )
>>> labels = ["space & cosmos", "scientific discovery", "microbiology", "robots", "archeology"]
>>> await client.zero_shot_classification(text, labels)
[
ZeroShotClassificationOutputElement(label='scientific discovery', score=0.7961668968200684),
ZeroShotClassificationOutputElement(label='space & cosmos', score=0.18570658564567566),
ZeroShotClassificationOutputElement(label='microbiology', score=0.00730885099619627),
ZeroShotClassificationOutputElement(label='archeology', score=0.006258360575884581),
ZeroShotClassificationOutputElement(label='robots', score=0.004559356719255447),
]
>>> await client.zero_shot_classification(text, labels, multi_label=True)
[
ZeroShotClassificationOutputElement(label='scientific discovery', score=0.9829297661781311),
ZeroShotClassificationOutputElement(label='space & cosmos', score=0.755190908908844),
ZeroShotClassificationOutputElement(label='microbiology', score=0.0005462635890580714),
ZeroShotClassificationOutputElement(label='archeology', score=0.00047131875180639327),
ZeroShotClassificationOutputElement(label='robots', score=0.00030448526376858354),
]Contoh dengan multi_label=True dan hypothesis_template kustom:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.zero_shot_classification(
... text="I really like our dinner and I'm very happy. I don't like the weather though.",
... candidate_labels=["positive", "negative", "pessimistic", "optimistic"],
... multi_label=True,
... hypothesis_template="This text is {} towards the weather"
... )
[
ZeroShotClassificationOutputElement(label='negative', score=0.9231801629066467),
ZeroShotClassificationOutputElement(label='pessimistic', score=0.8760990500450134),
ZeroShotClassificationOutputElement(label='optimistic', score=0.0008674879791215062),
ZeroShotClassificationOutputElement(label='positive', score=0.0005250611575320363)
]zero_shot_image_classification
< source >( image: typing.Union[bytes, typing.BinaryIO, str, pathlib.Path, ForwardRef('Image'), bytearray, memoryview]candidate_labels: listmodel: str | None = Nonehypothesis_template: str | None = None ) → list[ZeroShotImageClassificationOutputElement]
Parameter
- image (
Union[str, Path, bytes, BinaryIO, PIL.Image.Image]) — Gambar input untuk dicaption. Bisa berupa byte mentah, file gambar, URL ke gambar online, atau PIL Image. - candidate_labels (
list[str]) — Label kandidat untuk gambar ini - model (
str, opsional) — Model yang akan digunakan untuk inferensi. Bisa berupa ID model yang dihosting di Hugging Face Hub atau URL ke Inference Endpoint yang telah di-deploy. Parameter ini menimpa model yang didefinisikan pada level instance. Jika tidak disediakan, model klasifikasi gambar zero-shot yang direkomendasikan secara default akan digunakan. - hypothesis_template (
str, opsional) — Kalimat yang digunakan bersamacandidate_labelsuntuk mencoba klasifikasi gambar dengan mengganti placeholder dengan label kandidat.
Mengembalikan
list[ZeroShotImageClassificationOutputElement]
Daftar item ZeroShotImageClassificationOutputElement yang berisi label prediksi dan tingkat keyakinannya.
Membuang
InferenceTimeoutError atau HfHubHTTPError
- InferenceTimeoutError — Jika model tidak tersedia atau permintaan melebihi batas waktu.
HfHubHTTPError— Jika permintaan gagal dengan kode status error HTTP selain HTTP 503.
Berikan gambar input dan label teks untuk memprediksi label teks untuk gambar tersebut.
Contoh:
# Must be run in an async context
>>> from huggingface_hub import AsyncInferenceClient
>>> client = AsyncInferenceClient()
>>> await client.zero_shot_image_classification(
... "https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Cute_dog.jpg/320px-Cute_dog.jpg",
... candidate_labels=["dog", "cat", "horse"],
... )
[ZeroShotImageClassificationOutputElement(label='dog', score=0.956),...]InferenceTimeoutError
Error yang muncul ketika model tidak tersedia atau permintaan melebihi batas waktu.