Skip to content

Commit 6c40c59

Browse files
committed
fix: add optional chaining for model.tags in tasks snippets
1 parent e51acb0 commit 6c40c59

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

packages/tasks/src/model-libraries-snippets.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -788,11 +788,11 @@ export const transformers = (model: ModelData): string[] => {
788788
if (model.pipeline_tag && LIBRARY_TASK_MAPPING.transformers?.includes(model.pipeline_tag)) {
789789
const pipelineSnippet = ["# Use a pipeline as a high-level helper", "from transformers import pipeline", ""];
790790

791-
if (model.tags.includes("conversational") && model.config?.tokenizer_config?.chat_template) {
791+
if (model.tags?.includes("conversational") && model.config?.tokenizer_config?.chat_template) {
792792
pipelineSnippet.push("messages = [", ' {"role": "user", "content": "Who are you?"},', "]");
793793
}
794794
pipelineSnippet.push(`pipe = pipeline("${model.pipeline_tag}", model="${model.id}"` + remote_code_snippet + ")");
795-
if (model.tags.includes("conversational") && model.config?.tokenizer_config?.chat_template) {
795+
if (model.tags?.includes("conversational") && model.config?.tokenizer_config?.chat_template) {
796796
pipelineSnippet.push("pipe(messages)");
797797
}
798798

packages/tasks/src/snippets/curl.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export const snippetBasic = (model: ModelDataMinimal, accessToken: string): stri
1010
-H "Authorization: Bearer ${accessToken || `{API_TOKEN}`}"`;
1111

1212
export const snippetTextGeneration = (model: ModelDataMinimal, accessToken: string): string => {
13-
if (model.tags.includes("conversational")) {
13+
if (model.tags?.includes("conversational")) {
1414
// Conversational model detected, so we display a code snippet that features the Messages API
1515
return `curl 'https://api-inference.huggingface.co/models/${model.id}/v1/chat/completions' \\
1616
-H "Authorization: Bearer ${accessToken || `{API_TOKEN}`}" \\
@@ -28,7 +28,7 @@ export const snippetTextGeneration = (model: ModelDataMinimal, accessToken: stri
2828
};
2929

3030
export const snippetImageTextToTextGeneration = (model: ModelDataMinimal, accessToken: string): string => {
31-
if (model.tags.includes("conversational")) {
31+
if (model.tags?.includes("conversational")) {
3232
// Conversational model detected, so we display a code snippet that features the Messages API
3333
return `curl 'https://api-inference.huggingface.co/models/${model.id}/v1/chat/completions' \\
3434
-H "Authorization: Bearer ${accessToken || `{API_TOKEN}`}" \\

packages/tasks/src/snippets/js.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ query({"inputs": ${getModelInputSnippet(model)}}).then((response) => {
2424
});`;
2525

2626
export const snippetTextGeneration = (model: ModelDataMinimal, accessToken: string): string => {
27-
if (model.tags.includes("conversational")) {
27+
if (model.tags?.includes("conversational")) {
2828
// Conversational model detected, so we display a code snippet that features the Messages API
2929
return `import { HfInference } from "@huggingface/inference";
3030
@@ -43,7 +43,7 @@ for await (const chunk of inference.chatCompletionStream({
4343
};
4444

4545
export const snippetImageTextToTextGeneration = (model: ModelDataMinimal, accessToken: string): string => {
46-
if (model.tags.includes("conversational")) {
46+
if (model.tags?.includes("conversational")) {
4747
// Conversational model detected, so we display a code snippet that features the Messages API
4848
return `import { HfInference } from "@huggingface/inference";
4949

packages/tasks/src/snippets/python.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,10 +175,10 @@ export const pythonSnippets: Partial<Record<PipelineType, (model: ModelDataMinim
175175
};
176176

177177
export function getPythonInferenceSnippet(model: ModelDataMinimal, accessToken: string): string {
178-
if (model.pipeline_tag === "text-generation" && model.tags.includes("conversational")) {
178+
if (model.pipeline_tag === "text-generation" && model.tags?.includes("conversational")) {
179179
// Conversational model detected, so we display a code snippet that features the Messages API
180180
return snippetConversational(model, accessToken);
181-
} else if (model.pipeline_tag === "image-text-to-text" && model.tags.includes("conversational")) {
181+
} else if (model.pipeline_tag === "image-text-to-text" && model.tags?.includes("conversational")) {
182182
// Example sending an image to the Message API
183183
return snippetConversationalWithImage(model, accessToken);
184184
} else {

0 commit comments

Comments
 (0)