Skip to content

Upgrading huggingface-hub 0.26 to 0.27

Breaking0.26.5 → 0.27.1Breaking5Platform1Deprecated2New5Changed4Fixed17Other12

BreakingUpgrade verdict

5 breaking changes and a platform requirement change.

  • The table question answering method no longer takes a parameter argument.
  • The list_metrics method has been removed from the API client because it was rarely used.
  • The security status of a model is now read from a renamed field, so code using the old name must be updated.
  • When saving model card data, empty (None) values inside nested structures are no longer dropped.
Top 5 of 8 that need code or config changes
Breaking5
InferenceClient.table_question_answering() no longer accepts a parameter argument, including the async equivalent.
InferenceClient.table_question_answering()parameter
Removes list_metrics() from HfApi due to low usage.
list_metrics()HfApi
Exposes repository security status in ModelInfo as security_repo_status instead of securityStatus.
HfApi().model_info()ModelInfosecurity_repo_statussecurityStatus
RepoCardData serialization now preserves None values in nested structures.
RepoCardData
InferenceClient.image_to_image() now takes target_size instead of height and width, including the async equivalent.
InferenceClient.image_to_image()target_sizeheightwidth
Platform1
Adds support for Python 3.13.
Deprecated2
Deprecates legacy token permission checks including is_write_action in build_hf_headers() and write_permission=True in login methods.
is_write_actionbuild_hf_headers()write_permissionget_token_permission
Deprecates the labels argument in InferenceClient.zero_shot_classification() and InferenceClient.image_zero_shot_classification(), including async equivalents.
labelsInferenceClient.zero_shot_classification()InferenceClient.image_zero_shot_classification()

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • removed: export ChatCompletionInputToolType
  • removed: export MultiCommitException
  • removed: export ToolElement
  • removed: export ZeroShotClassificationInputData
  • removed: export ZeroShotImageClassificationInputData
  • removed: export ZeroShotObjectDetectionInputData
  • removed: export create_commits_on_pr
  • removed: export list_metrics
  • removed: export plan_multi_commits
  • added: export ChatCompletionInputGrammarTypeType
  • added: export ChatCompletionInputMessageChunkType
  • added: export ChatCompletionInputTool
  • added: export ChatCompletionInputToolChoiceClass
  • added: export ChatCompletionInputToolChoiceEnum
  • added: export DDUFEntry
  • added: export FeatureExtractionInputTruncationDirection
  • added: export ImageSegmentationSubtask
  • added: export Padding
  • added: export SummarizationTruncationStrategy
  • added: export TableQuestionAnsweringParameters
  • added: export Text2TextGenerationTruncationStrategy
  • added: export TextGenerationOutputFinishReason
  • added: export TokenClassificationAggregationStrategy
  • added: export TranslationTruncationStrategy
  • added: export TypeEnum
  • added: export ZeroShotObjectDetectionParameters
  • added: export export_entries_as_dduf
  • added: export export_folder_as_dduf
  • added: export load_state_dict_from_file
  • added: export load_torch_model
  • added: export read_dduf_file
  • added: class DDUFCorruptedFileError(DDUFError)
  • added: class DDUFError(Exception)
  • added: class DDUFExportError(DDUFError)
  • added: class DDUFInvalidEntryNameError(DDUFExportError)
  • changed: function push_to_hub_fastai(learner, *, repo_id: str, commit_message: str=…, private: bool=…, token: Optional[str]=…, config: Optional[dict]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, api_endpoint: Optional[str]=…) → function push_to_hub_fastai(learner, *, repo_id: str, commit_message: str=…, private: Optional[bool]=…, token: Optional[str]=…, config: Optional[dict]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, api_endpoint: Optional[str]=…)
  • removed: class MetricInfo
  • removed: constructor MetricInfo(**kwargs)
  • removed: field MetricInfo.description: Optional[str]
  • removed: field MetricInfo.id: str
  • removed: field MetricInfo.space_id: str
  • removed: method HfApi.create_commits_on_pr(*, repo_id: str, addition_commits: List[List[CommitOperationAdd]], deletion_commits: List[List[CommitOperationDelete]], commit_message: str, commit_description: Optional[str]=…, token: Union[str, bool, None]=…, repo_type: Optional[str]=…, merge_pr: bool=…, num_threads: int=…, verbose: bool=…) -> str
  • removed: method HfApi.list_metrics() -> List[MetricInfo]
  • removed: variable create_commits_on_pr
  • removed: variable list_metrics
  • changed: method HfApi.create_repo(repo_id: str, *, token: Union[str, bool, None]=…, private: bool=…, repo_type: Optional[str]=…, exist_ok: bool=…, resource_group_id: Optional[str]=…, space_sdk: Optional[str]=…, space_hardware: Optional[SpaceHardware]=…, space_storage: Optional[SpaceStorage]=…, space_sleep_time: Optional[int]=…, space_secrets: Optional[List[Dict[str, str]]]=…, space_variables: Optional[Lis… → method HfApi.create_repo(repo_id: str, *, token: Union[str, bool, None]=…, private: Optional[bool]=…, repo_type: Optional[str]=…, exist_ok: bool=…, resource_group_id: Optional[str]=…, space_sdk: Optional[str]=…, space_hardware: Optional[SpaceHardware]=…, space_storage: Optional[SpaceStorage]=…, space_sleep_time: Optional[int]=…, space_secrets: Optional[List[Dict[str, str]]]=…, space_variables: Op…
  • changed: method HfApi.get_token_permission(token: Union[bool, str, None]=…) -> Literal['read', 'write', None] → method HfApi.get_token_permission(token: Union[bool, str, None]=…) -> Literal['read', 'write', 'fineGrained', None]
  • changed: method HfApi.upload_large_folder(repo_id: str, folder_path: Union[str, Path], *, repo_type: str, revision: Optional[str]=…, private: bool=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, num_workers: Optional[int]=…, print_report: bool=…, print_report_every: int=…) -> None → method HfApi.upload_large_folder(repo_id: str, folder_path: Union[str, Path], *, repo_type: str, revision: Optional[str]=…, private: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, num_workers: Optional[int]=…, print_report: bool=…, print_report_every: int=…) -> None
  • changed: method HfFileSystem.glob(path, **kwargs) → method HfFileSystem.glob(path: str, **kwargs) -> List[str]
  • changed: method HfFileSystem.walk(path, *args, **kwargs) → method HfFileSystem.walk(path: str, *args, **kwargs) -> Iterator[Tuple[str, List[str], List[str]]]
  • changed: method ModelHubMixin.push_to_hub(repo_id: str, *, config: Optional[Union[dict, DataclassInstance]]=…, commit_message: str=…, private: bool=…, token: Optional[str]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, model_card_kwargs: Optio… → method ModelHubMixin.push_to_hub(repo_id: str, *, config: Optional[Union[dict, DataclassInstance]]=…, commit_message: str=…, private: Optional[bool]=…, token: Optional[str]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, model_card_kwa…
  • added: class DataclassInstance(Protocol)
  • changed: function push_to_hub_keras(model, repo_id: str, *, config: Optional[dict]=…, commit_message: str=…, private: bool=…, api_endpoint: Optional[str]=…, token: Optional[str]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, log_dir: Optional[… → function push_to_hub_keras(model, repo_id: str, *, config: Optional[dict]=…, commit_message: str=…, private: Optional[bool]=…, api_endpoint: Optional[str]=…, token: Optional[str]=…, branch: Optional[str]=…, create_pr: Optional[bool]=…, allow_patterns: Optional[Union[List[str], str]]=…, ignore_patterns: Optional[Union[List[str], str]]=…, delete_patterns: Optional[Union[List[str], str]]=…, log_dir:…
  • changed: constructor ModelCardData(*, base_model: Optional[Union[str, List[str]]]=…, datasets: Optional[List[str]]=…, eval_results: Optional[List[EvalResult]]=…, language: Optional[Union[str, List[str]]]=…, library_name: Optional[str]=…, license: Optional[str]=…, license_name: Optional[str]=…, license_link: Optional[str]=…, metrics: Optional[List[str]]=…, model_name: Optional[str]=…, pipeline_tag: Optiona… → constructor ModelCardData(*, base_model: Optional[Union[str, List[str]]]=…, datasets: Optional[Union[str, List[str]]]=…, eval_results: Optional[List[EvalResult]]=…, language: Optional[Union[str, List[str]]]=…, library_name: Optional[str]=…, license: Optional[str]=…, license_name: Optional[str]=…, license_link: Optional[str]=…, metrics: Optional[List[str]]=…, model_name: Optional[str]=…, pipeline_…
  • added: export load_state_dict_from_file
  • added: export load_torch_model
  • added: function is_tqdm_disabled(log_level: int) -> Optional[bool]