Skip to content

docs(readme): update onnx example import path and cache location #2607

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 23, 2025

Conversation

double12gzh
Copy link
Contributor

The example code in README files was updated to use the correct import path for Paraformer from the runtime package instead of the top-level module. The wav path was also modified to use Path.home() for cross-platform compatibility and to include the missing 'models' directory in the cache path. These changes ensure the examples work correctly with the current package structure.

#2605

The example code in README files was updated to use the correct import path for Paraformer from the runtime package instead of the top-level module. The wav path was also modified to use Path.home() for cross-platform compatibility and to include the missing 'models' directory in the cache path. These changes ensure the examples work correctly with the current package structure.
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @double12gzh, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses issues in the ONNX example code provided in the project's README files. The primary goal is to ensure the examples are accurate and executable by fixing incorrect import paths and standardizing file cache locations for better cross-platform compatibility, thereby improving the overall reliability of the documentation.

Highlights

  • Documentation Update: Corrected the import path for Paraformer in the ONNX example code within the README.md and README_zh.md files. The import now points to its specific location within the runtime package (from runtime.python.onnxruntime.funasr_onnx.paraformer_bin import Paraformer) instead of a top-level module.
  • Example Code Fixes: Updated the example WAV file path in the READMEs to ensure cross-platform compatibility by utilizing pathlib.Path.home(). Additionally, the cache path was corrected to include the previously missing models directory, ensuring the example code functions as expected.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the ONNX example in the README files to use the correct import path and a more robust, cross-platform method for locating the example audio file. I've suggested a small improvement to the path construction to make it fully cross-platform compatible by using pathlib's features more idiomatically. Otherwise, the changes look good.

model_dir = "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
model = Paraformer(model_dir, batch_size=1, quantize=True)

wav_path = ['~/.cache/modelscope/hub/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav']
wav_path = [f"{home_dir}/.cache/modelscope/hub/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav"]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

While using pathlib.Path.home() improves cross-platform compatibility, constructing the path with an f-string and / might not be fully portable. On Windows, home_dir will be a path with \ separators, potentially leading to an invalid mixed-separator path (e.g., C:\Users\user/.cache/...).

To ensure the example works correctly on all operating systems, it's recommended to use pathlib's overloaded / operator for joining all path components. This also enhances code readability by leveraging the existing model_dir variable.

Suggested change
wav_path = [f"{home_dir}/.cache/modelscope/hub/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav"]
wav_path = [str(home_dir / ".cache" / "modelscope" / "hub" / "models" / model_dir / "example" / "asr_example.wav")]

model_dir = "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
model = Paraformer(model_dir, batch_size=1, quantize=True)

wav_path = ['~/.cache/modelscope/hub/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav']
wav_path = [f"{home_dir}/.cache/modelscope/hub/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav"]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

While using pathlib.Path.home() improves cross-platform compatibility, constructing the path with an f-string and / might not be fully portable. On Windows, home_dir will be a path with \ separators, potentially leading to an invalid mixed-separator path (e.g., C:\Users\user/.cache/...).

To ensure the example works correctly on all operating systems, it's recommended to use pathlib's overloaded / operator for joining all path components. This also enhances code readability by leveraging the existing model_dir variable.

Suggested change
wav_path = [f"{home_dir}/.cache/modelscope/hub/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/example/asr_example.wav"]
wav_path = [str(home_dir / ".cache" / "modelscope" / "hub" / "models" / model_dir / "example" / "asr_example.wav")]

@LauraGPT LauraGPT merged commit 8316fc4 into modelscope:main Jul 23, 2025
@double12gzh double12gzh deleted the gzh/fix/invalid-code-demo branch July 23, 2025 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants