cv_note: a Chinese-language computer vision study repository that is being retired in favour of two successors
记录cv算法工程师的成长之路,分享计算机视觉和模型压缩部署技术栈笔记。https://harleyszhang.github.io/cv_note/
At a glance
- What is it?
- harleyszhang/cv_note collects computer vision, model compression and deployment notes under an Apache-2.0 licence, but its own README states the project is being abandoned. Here is what remains usable, what has already moved, and what a reader should check before cloning it.
- Who is it for?
- cv_note is worth cloning only if you want the older directory tree (computer basics, programming language, data structures, machine learning, deep learning, computer vision, model compression, high performance computing, model deployment, interview summaries) as a reading list, and only if you accept that the README says most of it is no longer updated.
- Can I use it commercially?
- Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 129 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The problem cv_note addresses, and the problem it now has
The README describes an origin that is narrower than the repository's current scope. It says the project began as an internship referral table, a list of companies hiring for campus recruitment, and a personal interview summary, and only later turned into a record of the technical stack a computer vision algorithm engineer is expected to know. That history explains the shape of the repository: a directory tree covering ten areas, from computer basics through programming languages, data structures and algorithms, machine learning, deep learning, computer vision, model compression and quantization, high performance computing, model deployment, and interview summaries. The stated audience is the CV algorithm engineer, and the README lists what that person needs beyond programming: machine learning and deep learning, image recognition, object detection and semantic segmentation, model compression, and model deployment.
What a reader needs to know before investing time is that the README itself announces the end. In the preface it states that the project is gradually being abandoned and that most content will no longer be updated, directing readers to dl_note and lite_llama for deep learning, large model inference and inference framework development. It also admits that some topics were never finished, attributing this to limited time and energy. A repository whose own preface redirects you elsewhere is not a trap, but it is a signal: treat cv_note as an archive of a learning path, not as a maintained reference.
How the material is organised and how you are meant to read it
There is no build system, no package to install and no service to run. The repository is a collection of Markdown files arranged in numbered directories, plus images under data/images and icons under data/icons. The README's table of contents links to computer basics, programming language, data structures and algorithms, machine learning, deep learning, computer vision, model compression and quantization, high performance computing, model deployment, and interview summaries. Within that tree, two files are called out directly under an algorithm basics heading: a deep learning fundamentals summary at 4-deep_learning/深度学习基础总结.md and a Python 3 summary at 2-programming_language/python3/python3编程总结.md.
The reading instruction in the README is deliberate. It says that to start from zero you should first complete one classic foreign course in full, from lecture videos through assignments to the project, then read a machine learning or deep learning textbook cover to cover, and in parallel become fluent in one programming language and one deep learning framework. It cites an article by Zhao Xin of Renmin University on getting started in AI research as the source for that advice. That is a reading order, not a tool. The repository supplies the notes that sit alongside the course and the textbook; it does not replace either, and the README does not claim otherwise.
There is a rendering caveat worth taking literally. The README notes that GitHub displays LaTeX formulas directly, that some formulas may render incompletely, and that readers can install the MathJax Plugin for Github in Chrome (which the README says requires a proxy to download), or download the repository and read it in Typora, or use VSCode with the Markdown+Math extension. If your reading depends on the formulas, plan for one of those three routes rather than assuming the browser view is complete.
Getting the files: clone, then read locally
The only concrete operation the material supports is fetching the repository and opening its Markdown files. The default branch is master. A clone gives you the numbered directories, the data/images assets, and the .md files; there is no requirements.txt described in the README, no setup script, and no entry point, so there is nothing to execute.
If you follow the README's own rendering advice, the local route is: clone the repository, open it in Typora, or open it in VSCode with the Markdown+Math extension installed, which the README presents as the alternative when LaTeX does not display correctly in the browser. The browser route is to install the MathJax Plugin for Github, which the README says needs a proxy to download and install.
The repository also links outward rather than packaging anything: a personal site at armcvai.com, a Zhihu profile, a CSDN blog, a cnblogs blog, and a juejin column, all presented as places where the same author writes. The README also embeds a Star History chart. None of these are dependencies; they are where the author's writing lives outside GitHub, and for a project in the process of being abandoned they matter more than usual, because the successor repositories are named in the preface rather than in the directory listing.
The paid course advertised in the README is not part of the repository
The first section of the README is not documentation. It is an advertisement for a paid course on building a large model inference framework, priced at 499, which the README says was produced jointly with the author of a separate deep learning inference framework course. The described project uses Triton with PyTorch, writes operators in Triton rather than CUDA, covers the offline inference pipeline, implements matrix multiplication kernels, supports FlashAttention V1, V2 and V3, GQA and PageAttention, and is said to adapt llama, qwen2.5 and llava1.5 models. The README claims a speedup of up to 4x over the transformers library on llama3 1B and 3B models, and shows GIF recordings of streaming output for llama3.2-1.5B-Instruct, Qwen2.5-3B and Llava1.5-7b-hf.
None of that is in this repository, and none of it is verifiable from the material here. The claim of a 4x speedup is the author's, stated in a sales section, with no benchmark table, hardware description or reproduction steps in the README. Treat it as marketing copy until you see the code. The relevant point for a reader evaluating cv_note is that the README's most prominent section is a commercial pitch and the actual notes are further down, which is an unusual ordering and worth knowing before you start scrolling.
There is also a company list. The README keeps a table of employers grouped into top-tier, internet, AI unicorn and other categories, but explicitly notes that the 2019 internship table has been removed because most of it expired and the author no longer maintains it, and warns that algorithm roles are fewer than development roles even though more companies hire. That warning is the honest part of the section.
The limitation is stated by the author, not inferred
Most reviews have to argue that a project is stale. Here the README says it: the project is gradually being abandoned, most content is no longer updated, and some topics were never completed. That has practical consequences. A note on model deployment or model compression may reflect the state of the field at the time it was written, with no revision marker, no changelog and no release history (the repository has no releases). You cannot tell from the outside which pages were finished and which were stubs, because the README's apology for unfinished topics is general rather than a list.
The second limitation is language. The notes are written in Chinese, including the file paths themselves, such as 深度学习基础总结.md and cv算法工程师成长路线.md. An engineer who cannot read Chinese gets essentially nothing from the body of the repository, and the README's advice, which is to work through a full course and a textbook, is not something the repository can substitute for.
The third is scope drift. The company table, the interview summaries and the technical notes serve different readers. Someone who wants the deployment material has to walk past recruitment information that the author has already declared partly dead. If you want a maintained, single-purpose reference on inference, cv_note is the wrong tool, and the README points you to a different one.
dl_note and lite_llama are the successors, and the split matters
The README names two repositories as the destinations for the material it is no longer maintaining: dl_note and lite_llama. The split tells you how the author thinks about the subject. dl_note is presented as the place for deep learning and large model inference knowledge, and lite_llama as the place for large model inference framework development. In other words, the theory and the implementation were separated, and cv_note keeps the older, broader CV-oriented tree.
That is a different approach from simply continuing one repository. It means the historical material stays where it is, frozen, while new work goes into narrower repositories with clearer boundaries. For a reader, the practical difference is that cv_note remains useful as a map of what a CV engineer was expected to know, including the classic areas (detection, segmentation, compression, deployment), while dl_note and lite_llama address the inference stack that the paid course also targets. If your interest is the inference framework itself, the README's own course section and the lite_llama pointer describe the same territory from two directions, one commercial and one open.
The README does not state the licence of the successor repositories, only that cv_note is Apache-2.0. Check each one separately.
Licence and the cost of keeping a fork alive
cv_note is Apache-2.0. That permits commercial use, modification and redistribution provided you keep the licence and attribution notices and state significant changes, and it includes a patent grant. This is a note, not legal advice; read the LICENSE file in the repository for the actual terms.
The maintenance cost is the more interesting figure. Upstream, the README says the author has stopped updating most content, so a fork does not inherit a stream of fixes. If you copy these notes into an internal wiki, you own every stale statement in them, including the ones the author never finished. There is no versioning to help you: no releases, no tags described in the material, and a single master branch. That means an update to the upstream notes arrives as a commit you must diff yourself, and because the content is prose rather than code, a diff is not a signal of correctness either way.
The upgrade path the author chose was to start new repositories rather than revise this one. Following that path costs you nothing but a second clone; keeping cv_note as a living document costs you the review work the author has already declined to do.
Editorial conclusion
cv_note is worth cloning only if you want the older directory tree (computer basics, programming language, data structures, machine learning, deep learning, computer vision, model compression, high performance computing, model deployment, interview summaries) as a reading list, and only if you accept that the README says most of it is no longer updated. Anyone looking for current material on deep learning or large model inference should go to dl_note or lite_llama instead, which the README names as the destinations. Before relying on any single note, open the file and check whether it is one of the unfinished topics the README admits to, and read the preface in full rather than the directory listing, because the deprecation notice sits there and not at the top of the page.
Community notes