Assinaturas inferidas para pipelines Hugging Face¶
O Snowflake Model Registry infere automaticamente as assinaturas dos pipelines do Hugging Face com uma única tarefa da seguinte lista:
conversational
fill-mask
question-answering
summarization
table-question-answering
text2text-generation
text-classification
(aliassentiment-analysis
)text-generation
token-classification
(aliasner
)translation
translation_xx_to_yy
zero-shot-classification
Este tópico descreve as assinaturas desses tipos de pipelines do Hugging Face, incluindo uma descrição e exemplo das entradas necessárias e saídas esperadas. Todas as entradas e saídas são Snowpark DataFrames.
Para obter orientação geral sobre como registrar pipelines do Hugging Face no registro, consulte Pipeline do Hugging Face.
Pipeline de conversação¶
Um pipeline cuja tarefa é conversacional tem as seguintes entradas e saídas.
Entradas¶
user_inputs
: Uma lista de cadeias de caracteres que representam as entradas anteriores e atuais do usuário. O último da lista é a entrada atual.generated_responses
: Uma lista de cadeias de caracteres de cadeias de caracteres que representam as respostas anteriores do modelo.
Exemplo:
---------------------------------------------------------------------------
|"user_inputs" |"generated_responses" |
---------------------------------------------------------------------------
|[ |[ |
| "Do you speak French?", | "Yes I do." |
| "Do you know how to say Snowflake in French?" |] |
|] | |
---------------------------------------------------------------------------
Saídas¶
generated_responses
: Uma lista de cadeias de caracteres que representam as respostas anteriores e atuais do modelo. A última da lista é a resposta atual.
Exemplo:
-------------------------
|"generated_responses" |
-------------------------
|[ |
| "Yes I do.", |
| "I speak French." |
|] |
-------------------------
Pipeline de máscara de preenchimento¶
Um pipeline cuja tarefa é «fill-mask « tem as seguintes entradas e saídas.
Entradas¶
inputs
: uma cadeia de caracteres onde há uma máscara para preencher.
Exemplo:
--------------------------------------------------
|"inputs" |
--------------------------------------------------
|LynYuu is the [MASK] of the Grand Duchy of Yu. |
--------------------------------------------------
Saídas¶
outputs
: Uma cadeia de caracteres com uma representação JSON de uma lista de objetos, cada um dos quais pode conter chaves comoscore
,token
,token_str
ousequence
. Para obter mais detalhes, consulte FillMaskPipeline.
Exemplo:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"outputs" |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|[{"score": 0.9066258072853088, "token": 3007, "token_str": "capital", "sequence": "lynyuu is the capital of the grand duchy of yu."}, {"score": 0.08162177354097366, "token": 2835, "token_str": "seat", "sequence": "lynyuu is the seat of the grand duchy of yu."}, {"score": 0.0012052370002493262, "token": 4075, "token_str": "headquarters", "sequence": "lynyuu is the headquarters of the grand duchy of yu."}, {"score": 0.0006560495239682496, "token": 2171, "token_str": "name", "sequence": "lynyuu is the name of the grand duchy of yu."}, {"score": 0.0005427763098850846, "token": 3200, "token_str"... |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Classificação de token¶
Um pipeline cuja tarefa é «ner» ou «token-classification « tem as seguintes entradas e saídas.
Entradas¶
inputs
: Uma cadeia de caracteres com os tokens a serem classificados.
Exemplo:
------------------------------------------------
|"inputs" |
------------------------------------------------
|My name is Izumi and I live in Tokyo, Japan. |
------------------------------------------------
Saídas¶
outputs
: Uma cadeia de caracteres com uma representação JSON de uma lista de objetos de resultado, cada um dos quais pode conter chaves comoentity
,score
,index
,word
,name
,start
ouend
. Para obter mais detalhes, consulte TokenClassificationPipeline.
Exemplo:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"outputs" |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|[{"entity": "PRON", "score": 0.9994392991065979, "index": 1, "word": "my", "start": 0, "end": 2}, {"entity": "NOUN", "score": 0.9968984127044678, "index": 2, "word": "name", "start": 3, "end": 7}, {"entity": "AUX", "score": 0.9937735199928284, "index": 3, "word": "is", "start": 8, "end": 10}, {"entity": "PROPN", "score": 0.9928083419799805, "index": 4, "word": "i", "start": 11, "end": 12}, {"entity": "PROPN", "score": 0.997334361076355, "index": 5, "word": "##zumi", "start": 12, "end": 16}, {"entity": "CCONJ", "score": 0.999173104763031, "index": 6, "word": "and", "start": 17, "end": 20}, {... |
Resposta a perguntas (saída única)¶
Um pipeline cuja tarefa é «question-answering «, em que top_k
não está definido ou está definido como 1, tem as seguintes entradas e saídas.
Entradas¶
question
: Uma cadeia de caracteres com a pergunta a ser respondida.context
: uma cadeia de caracteres que pode conter a resposta.
Exemplo:
-----------------------------------------------------------------------------------
|"question" |"context" |
-----------------------------------------------------------------------------------
|What did Doris want to do? |Doris is a cheerful mermaid from the ocean dept... |
-----------------------------------------------------------------------------------
Saídas¶
score
: pontuação de confiança de ponto flutuante de 0,0 a 1,0.start
: índice inteiro do primeiro token da resposta no contexto.end
: índice inteiro do último token da resposta no contexto original.answer
: Uma cadeia de caracteres com a resposta encontrada.
Exemplo:
--------------------------------------------------------------------------------
|"score" |"start" |"end" |"answer" |
--------------------------------------------------------------------------------
|0.61094731092453 |139 |178 |learn more about the world of athletics |
--------------------------------------------------------------------------------
Resposta a perguntas (várias saídas)¶
Um pipeline cuja tarefa é «question-answering «, em que top_k
é definido e é maior que 1, tem as seguintes entradas e saídas.
Entradas¶
question
: Uma cadeia de caracteres com a pergunta a ser respondida.context
: uma cadeia de caracteres que pode conter a resposta.
Exemplo:
-----------------------------------------------------------------------------------
|"question" |"context" |
-----------------------------------------------------------------------------------
|What did Doris want to do? |Doris is a cheerful mermaid from the ocean dept... |
-----------------------------------------------------------------------------------
Saídas¶
outputs
: Uma cadeia de caracteres com uma representação JSON de uma lista de objetos de resultado, cada um dos quais pode conter chaves comoscore
,start
,end
ouanswer
.
Exemplo:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"outputs" |
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|[{"score": 0.61094731092453, "start": 139, "end": 178, "answer": "learn more about the world of athletics"}, {"score": 0.17750297486782074, "start": 139, "end": 180, "answer": "learn more about the world of athletics.\""}, {"score": 0.06438097357749939, "start": 138, "end": 178, "answer": "\"learn more about the world of athletics"}] |
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Resumo¶
Um pipeline cuja tarefa é «summarization «, onde return_tensors
é falso ou não definido, tem as seguintes entradas e saídas.
Entradas¶
documents
: Uma cadeia de caracteres com texto para resumir.
Exemplo:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"documents" |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|Neuro-sama is a chatbot styled after a female VTuber that hosts live streams on the Twitch channel "vedal987". Her speech and personality are generated by an artificial intelligence (AI) system wh... |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Saídas¶
summary_text
: Uma cadeia de caracteres com o resumo gerado ou, senum_return_sequences
for maior que 1, uma cadeia de caracteres com uma representação JSON de uma lista de resultados, cada um dos quais é um dicionário com campos, incluindosummary_text
.
Exemplo:
---------------------------------------------------------------------------------
|"summary_text" |
---------------------------------------------------------------------------------
| Neuro-sama is a chatbot styled after a female VTuber that hosts live streams |
---------------------------------------------------------------------------------
Tabela de respostas a perguntas¶
Um pipeline cuja tarefa é «table-question-answering « tem as seguintes entradas e saídas.
Entradas¶
query
: Uma cadeia de caracteres com a pergunta a ser respondida.table
: Uma cadeia de caracteres com um dicionário serializado em JSON no formato{column -> [values]}
, que representa a tabela que pode conter uma resposta.
Exemplo:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"query" |"table" |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|Which channel has the most subscribers? |{"Channel": ["A.I.Channel", "Kaguya Luna", "Mirai Akari", "Siro"], "Subscribers": ["3,020,000", "872,000", "694,000", "660,000"], "Videos": ["1,200", "113", "639", "1,300"], "Created At": ["Jun 30 2016", "Dec 4 2017", "Feb 28 2014", "Jun 23 2017"]} |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Saídas¶
answer
: Uma cadeia de caracteres com uma possível resposta.coordinates
: Uma lista de inteiros que representam as coordenadas das células onde a resposta foi localizada.cells
: Uma lista de cadeias de caracteres com o conteúdo das células onde a resposta foi localizada.aggregator
: Uma cadeia de caracteres com o nome do agregador usado.
Exemplo:
----------------------------------------------------------------
|"answer" |"coordinates" |"cells" |"aggregator" |
----------------------------------------------------------------
|A.I.Channel |[ |[ |NONE |
| | [ | "A.I.Channel" | |
| | 0, |] | |
| | 0 | | |
| | ] | | |
| |] | | |
----------------------------------------------------------------
Classificação de texto (saída única)¶
Um pipeline cuja tarefa é «text-classification « ou «análise de sentimento», onde top_k
não é definido ou é nenhum (none), tem as seguintes entradas e saídas.
Entradas¶
text
: uma cadeia de caracteres para classificar.text_pair
: Uma cadeia de caracteres para classificar juntamente comtext
e que é usada com modelos que calculam similaridade de texto. Deixe em branco se o modelo não o utilizar.
Exemplo:
----------------------------------
|"text" |"text_pair" |
----------------------------------
|I like you. |I love you, too. |
----------------------------------
Saídas¶
label
: Uma cadeia de caracteres que representa o rótulo de classificação de texto.score
: uma pontuação de confiança de ponto flutuante de 0,0 a 1,0.
Exemplo:
--------------------------------
|"label" |"score" |
--------------------------------
|LABEL_0 |0.9760091304779053 |
--------------------------------
Classificação de texto (saída múltipla)¶
Um pipeline cuja tarefa é «text-classification « ou «análise de sentimento», onde top_k
é definido como um número, tem as seguintes entradas e saídas.
Nota
Uma tarefa de classificação de texto é considerada de saída múltipla se top_k
for definido como qualquer número, mesmo que esse número seja 1. Para obter uma saída única, use um valor top_k
de Nenhum.
Entradas¶
text
: uma cadeia de caracteres para classificar.text_pair
: Uma cadeia de caracteres para classificar juntamente comtext
, que é usada com modelos que calculam similaridade de texto. Deixe em branco se o modelo não o utilizar.
Exemplo:
--------------------------------------------------------------------
|"text" |"text_pair" |
--------------------------------------------------------------------
|I am wondering if I should have udon or rice fo... | |
--------------------------------------------------------------------
Saídas¶
outputs
: Uma cadeia de caracteres com uma representação JSON de uma lista de resultados, cada um dos quais contém campos que incluemlabel
escore
.
Exemplo:
--------------------------------------------------------
|"outputs" |
--------------------------------------------------------
|[{"label": "NEGATIVE", "score": 0.9987024068832397}] |
--------------------------------------------------------
Geração de texto¶
Um pipeline cuja tarefa é «geração de texto «, onde return_tensors
é falso ou não definido, tem as seguintes entradas e saídas.
Nota
Pipelines de geração de texto onde return_tensors
é verdadeiro não são suportados.
Entradas¶
inputs
: Uma cadeia de caracteres com um prompt.
Exemplo:
--------------------------------------------------------------------------------
|"inputs" |
--------------------------------------------------------------------------------
|A descendant of the Lost City of Atlantis, who swam to Earth while saying, " |
--------------------------------------------------------------------------------
Saídas¶
outputs
: Uma cadeia de caracteres com uma representação JSON de uma lista de objetos de resultado, cada um dos quais contém campos que incluemgenerated_text
.
Exemplo:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|"outputs" |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|[{"generated_text": "A descendant of the Lost City of Atlantis, who swam to Earth while saying, \"For my life, I don't know if I'm gonna land upon Earth.\"\n\nIn \"The Misfits\", in a flashback, wh... |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Geração de texto para texto¶
Um pipeline cuja tarefa é «geração de texto para texto «, onde return_tensors
é falso ou não definido, tem as seguintes entradas e saídas.
Nota
Pipelines de geração de texto para texto onde return_tensors
é verdadeiro não são suportados.
Entradas¶
inputs
: Uma cadeia de caracteres com um prompt.
Exemplo:
--------------------------------------------------------------------------------
|"inputs" |
--------------------------------------------------------------------------------
|A descendant of the Lost City of Atlantis, who swam to Earth while saying, " |
--------------------------------------------------------------------------------
Saídas¶
generated_text: Uma cadeia de caracteres com o texto gerado se
num_return_sequences
for 1, ou se num_return_sequences for maior que 1, uma representação de cadeia de caracteres de uma lista JSON de dicionários de resultados com campos incluindogenerated_text
.
Exemplo:
----------------------------------------------------------------
|"generated_text" |
----------------------------------------------------------------
|, said that he was a descendant of the Lost City of Atlantis |
----------------------------------------------------------------
Geração de tradução¶
Um pipeline cuja tarefa é «translation «, onde return_tensors
é falso ou não definido, tem as seguintes entradas e saídas.
Nota
Pipelines de geração de tradução onde return_tensors
é verdadeiro não são suportados.
Entradas¶
inputs
: Uma cadeia de caracteres com texto a ser traduzido.
Exemplo:
------------------------------------------------------------------------------------------------------
|"inputs" |
------------------------------------------------------------------------------------------------------
|Snowflake's Data Cloud is powered by an advanced data platform provided as a self-managed service. |
------------------------------------------------------------------------------------------------------
Saídas¶
translation_text
: Uma cadeia de caracteres que representa a tradução gerada senum_return_sequences
for 1, ou uma representação de cadeia de caracteres de uma lista JSON de dicionários de resultados, cada um contendo campos que incluemtranslation_text
.
Exemplo:
---------------------------------------------------------------------------------------------------------------------------------
|"translation_text" |
---------------------------------------------------------------------------------------------------------------------------------
|Le Cloud de données de Snowflake est alimenté par une plate-forme de données avancée fournie sous forme de service autogérés. |
---------------------------------------------------------------------------------------------------------------------------------
Classificação zero-shot¶
Um pipeline cuja tarefa é «zero-shot-classification « tem as seguintes entradas e saídas.
Entradas¶
sequences
: Uma cadeia de caracteres com o texto a ser classificado.candidate_labels
: Uma lista de cadeias de caracteres com os rótulos a serem aplicados ao texto.
Exemplo:
-----------------------------------------------------------------------------------------
|"sequences" |"candidate_labels" |
-----------------------------------------------------------------------------------------
|I have a problem with Snowflake that needs to be resolved asap!! |[ |
| | "urgent", |
| | "not urgent" |
| |] |
|I have a problem with Snowflake that needs to be resolved asap!! |[ |
| | "English", |
| | "Japanese" |
| |] |
-----------------------------------------------------------------------------------------
Saídas¶
sequence
: a cadeia de caracteres de entrada.labels
: Uma lista de cadeias de caracteres que representam os rótulos aplicados.scores
: uma lista de pontuações de confiança de ponto flutuante para cada rótulo.
Exemplo:
--------------------------------------------------------------------------------------------------------------
|"sequence" |"labels" |"scores" |
--------------------------------------------------------------------------------------------------------------
|I have a problem with Snowflake that needs to be resolved asap!! |[ |[ |
| | "urgent", | 0.9952737092971802, |
| | "not urgent" | 0.004726255778223276 |
| |] |] |
|I have a problem with Snowflake that needs to be resolved asap!! |[ |[ |
| | "Japanese", | 0.5790848135948181, |
| | "English" | 0.42091524600982666 |
| |] |] |
--------------------------------------------------------------------------------------------------------------