Public record
Software health reportschema 0.12.0 · metrics 1.13.0 · 2026-07-18 13:35 UTC

Unstructured-IO / unstructured

Convert documents to structured data effortlessly. Unstructured is open-source ETL solution for transforming complex documents into clean, structured formats for language models. Visit our website to learn more about our enterprise grade Platform product for production grade workflows, partitioning, enrichments, chunking and embedding.

HTMLApache-2.0★ 15,156 stars⑂ 1,274 forkssince Sep 2022View on GitHub ↗

Unstructured-IO/unstructured holds a health index of 87 out of 100, placing it in the Excellent band. It scores highest on Vitality (95/100) and lowest on AI Readiness (56/100). It was last updated 2 days ago. 7 contributors account for most of its recent work.

87
overall / 100
Excellent

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At risk ceiling of 49. AI Readiness sits outside the overall score.

87
Excellent85-100Exemplary; meets essentially all checked criteria
Good70-84Healthy; minor gaps
Moderate50-69Acceptable with notable gaps; review recommended
At risk30-49Significant weaknesses; adoption warrants caution
Critical1-29Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

Ownership

UnstructuredOrganization
1,498 followers45 public repossince Jun 2022

This repository is backed by an organization — shared, accountable stewardship that can outlive any single maintainer.

Package ecosystems

RegistryPackageVersionDownloads / moVersionsLast publishTags
PyPIunstructured0.24.15,086,6952286 days agocvhtmlnlppdfxmlparsingpreprocessing

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

95Excellent · 22% of overall
How it's scored
36/36Push recency — last push 2 days ago
27/36Commit cadence — 39/52 weeks with commits
18/18Commit volume — 149 commits in the last year
10/10OpenSSF Scorecard: Maintained — 22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Inputs used
commits_last_year149
human_commit_share
days_since_last_push2
active_weeks_last_year39

Release discipline

100Excellent
How it's scored
27/27Ships releases — 100 releases published
36/36Release recency — latest release 6 days ago
27/27Release cadence — a release every ~7.5 days
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count100
latest_release_tag0.24.1
releases_from_tagsno
days_since_latest_release6
mean_days_between_releases7.5
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

93Excellent · 18% of overall
How it's scored
60/60Stars — 15,156 stars
25/25Forks — 1,274 forks
10.3/15Watchers — 73 watchers
Inputs used
forks1,274
stars15,156
watchers73
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history

Community health

85Excellent
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (Apache-2.0)
18/18CONTRIBUTING guide
13.5/13.5Code of conduct
0/7.2Issue template
0/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingyes
has_issue_templateno
has_code_of_conductyes
has_pull_request_templateno
How it's scored
80/80Monthly downloads — 5,086,695 downloads/month across pypi
0/20Registry dependents — not reported by this ecosystem
Inputs used
packagesunstructured
dependents
ecosystemspypi
total_downloads
monthly_downloads5,086,695
Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

88Excellent · 24% of overall
How it's scored
51.3/54Bus factor — 7 contributor(s) cover half of all commits
19.2/22.5Commit distribution — top contributor authored 15% of commits
13.5/13.5Contributor breadth — 100 contributors
10/10OpenSSF Scorecard: Contributors — project has 9 contributing companies or organizations
Inputs used
bus_factor7
contributors_sampled100
top_contributor_share0.146
How it's scored
39.9/46.8Issue resolution — 85% of issues closed
29.8/38.3PR acceptance — 2,286/2,936 decided PRs merged
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Inputs used
merged_prs2,286
open_issues185
closed_issues1,072
issue_closed_ratio0.853
closed_unmerged_prs650
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
22.8/25Owner reach — 1,498 followers of Unstructured-IO
20.2/25Track record — 45 public repos, account ~4 yr old
Inputs used
followers1,498
owner_typeOrganization
is_verified
owner_loginUnstructured-IO
public_repos45
account_age_days1,480
How it's scored
25/25Published & resolvable — 1 package(s) on pypi
35/35Publish recency — latest publish 6 days ago
20/20Version history — 228 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packagesunstructured
ecosystemspypi
any_deprecatedno
min_days_since_publish6

Engineering Quality

Are baseline engineering and documentation practices in place?

86Excellent · 20% of overall
How it's scored
24/24CI workflows — 10 workflow(s)
24/24Tests present
16/16Linter config
9.6/9.6Pre-commit hooks
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Inputs used
has_ciyes
has_testsyes
has_editorconfigno
has_linter_configyes
has_precommit_configyes
How it's scored
30/30README
0/25Documentation directory
15/15Documentation / homepage site — https://www.unstructured.io/
10/10Repository description
10/10Topics — 20 topics
10/10Wiki
Inputs used
topicsdeep-learning, document-parsing, machine-learning, nlp, ocr, information-retrieval, data-pipelines, ml, preprocessing, pdf-to-text, natural-language-processing, pdf, pdf-to-json, document-image-analysis, donut, document-image-processing, document-parser, docx, langchain, llm
has_wikiyes
homepagehttps://www.unstructured.io/
has_readmeyes
has_docs_dirno
has_descriptionyes

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

69Moderate · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
3/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no data
7.5/7.5Code-Review — all changesets reviewed
2.5/2.5Contributors — project has 9 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5License — license file detected
7.5/7.5Maintained — 22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
5/5SAST — SAST tool is run on all commits
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — no data
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 63 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate6.9
Excluded from scoring (no data or not applicable): cii_best_practices, signed_releases. Remaining weights renormalized.

AI Readiness

How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score.

56Moderate · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
0/40Legible commit history — no data
Inputs used
has_llms_txtno
legible_history_share
agent_instruction_files
agent_instruction_max_bytes
Excluded from scoring (no data or not applicable): Legible commit history. Remaining weights renormalized.
How it's scored
18/18One-command bootstrap — Makefile
22/22Automated tests
11/11Lint / format config
11/11Static type checking — unstructured/py.typed
10/10Reproducible environment — Dockerfile, lockfile
0/10Demonstrated agent practice — no data
0/8Automated maintenance — no data
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfilesuv.lock
has_dockerfileyes
typed_languageno
bootstrap_filesMakefile
has_devcontainerno
has_linter_configyes
typecheck_configsunstructured/py.typed
agent_commit_share
toolchain_manifests
dependency_bot_commit_share
Excluded from scoring (no data or not applicable): Demonstrated agent practice, Automated maintenance. Remaining weights renormalized.
How it's scored
27/45Type-checkable code — HTML with type-check config (unstructured/py.typed)
54.2/55Manageable file sizes — 4/293 source files over 60KB
Inputs used
primary_languageHTML
largest_source_bytes145,235
source_files_sampled293
oversized_source_files4

Key facts

15,156GitHub stars
100contributors
149commits, last 12 months
2days since last push
100releases
7bus factor
185open issues
PyPIpackage ecosystems

More detail

OpenSSF Scorecard 6.9 / 10
6.9aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-18 13:35 UTC

10Binary-Artifactsno binaries found in the repo
4Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
n/aCII-Best-Practicesinternal error: error during json parsing: error during json.Unmarshal: invalid character '<' looking for beginning of value
10Code-Reviewall changesets reviewed
10Contributorsproject has 9 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
10SASTSAST tool is run on all commits
10Security-Policysecurity policy file detected
n/aSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities63 existing vulnerabilities detected
Direct dependencies 24
RegistryPackageVersion constraintManifest
PyPIbeautifulsoup4>=4.14.3, <5.0.0pyproject.toml
PyPIcharset-normalizer>=3.4.4, <4.0.0pyproject.toml
PyPIemoji>=2.15.0, <3.0.0pyproject.toml
PyPIfiletype>=1.2.0, <2.0.0pyproject.toml
PyPIhtml5lib>=1.1, <2.0.0pyproject.toml
PyPIlangdetect>=1.0.9, <2.0.0pyproject.toml
PyPIlxml>=5.0.0, <7.0.0pyproject.toml
PyPInh3>=0.3.0, <1.0.0pyproject.toml
PyPIspacy>=3.7.0, <4.0.0pyproject.toml
PyPIinstaller>=0.7.0, <1.0.0pyproject.toml
PyPInumba>=0.60.0, <1.0.0pyproject.toml
PyPInumpy>=1.26.0, <3.0.0pyproject.toml
PyPIpsutil>=7.2.2, <8.0.0pyproject.toml
PyPIpython-iso639>=2026.1.31, <2027.0.0pyproject.toml
PyPIpython-magic>=0.4.27, <1.0.0pyproject.toml
PyPIpython-oxmsg>=0.0.2, <1.0.0pyproject.toml
PyPIrapidfuzz>=3.14.3, <4.0.0pyproject.toml
PyPIregex>=2024.0.0, <2027.0.0pyproject.toml
PyPIrequests>=2.32.5, <3.0.0pyproject.toml
PyPItqdm>=4.67.3, <5.0.0pyproject.toml
PyPItyping-extensions>=4.15.0, <5.0.0pyproject.toml
PyPIunstructured-client>=0.25.9, <1.0.0pyproject.toml
PyPIwrapt>=2.1.1, <3.0.0pyproject.toml
PyPIfilelock>=3.12.0,<4.0.0pyproject.toml
All dependencies 587

Full resolved dependency set from the GitHub dependency graph: 39 direct and 548 indirect (transitive) packages. The transitive closure is complete when the repository commits a lockfile.

RegistryPackageVersionRelation
PyPIbeautifulsoup44.12.2direct
PyPIbeautifulsoup44.14.3direct
PyPIcharset-normalizer3.3.2direct
PyPIcharset-normalizer3.4.7direct
PyPIemoji2.15.0direct
PyPIemoji2.9.0direct
PyPIfilelock3.13.1direct
PyPIfilelock3.25.2direct
PyPIfiletype1.2.0direct
PyPIhtml5lib1.1direct
PyPIinstaller0.7.0direct
PyPIlangdetect1.0.9direct
PyPIlxml5.1.0direct
PyPIlxml6.0.3direct
PyPInh30.3.4direct
PyPInumba0.65.0direct
PyPInumpy1.23.5direct
PyPInumpy2.4.4direct
PyPIpsutil5.9.7direct
PyPIpsutil7.2.2direct
PyPIpython-iso6392024.1.2direct
PyPIpython-iso6392026.1.31direct
PyPIpython-magic0.4.27direct
PyPIpython-oxmsg0.0.2direct
PyPIrapidfuzz3.14.5direct
PyPIrapidfuzz3.6.1direct
PyPIregex2023.12.25direct
PyPIregex2026.4.4direct
PyPIrequests2.31.0direct
PyPIrequests2.33.1direct
PyPIspacy3.8.14direct
PyPItqdm4.66.1direct
PyPItqdm4.67.3direct
PyPItyping-extensions4.15.0direct
PyPItyping-extensions4.9.0direct
PyPIunstructured-client0.15.2direct
PyPIunstructured-client0.43.2direct
PyPIwrapt1.14.1direct
PyPIwrapt2.1.2direct
PyPIaccelerate1.13.0indirect
PyPIadlfs2026.2.0indirect
PyPIaioboto37.0.0indirect
PyPIaiobotocore3.4.0indirect
PyPIaiodns4.0.0indirect
PyPIaiofiles22.1.0indirect
PyPIaiofiles25.1.0indirect
PyPIaiohappyeyeballs2.6.1indirect
PyPIaiohttp3.13.5indirect
PyPIaiohttp3.9.1indirect
PyPIaioitertools0.13.0indirect
PyPIaiolimiter1.2.1indirect
PyPIaiosignal1.3.1indirect
PyPIaiosignal1.4.0indirect
PyPIaiosqlite0.19.0indirect
PyPIalbucore0.0.24indirect
PyPIalbumentations2.0.8indirect
PyPIalembic1.9.4indirect
PyPIannotated-doc0.0.4indirect
PyPIannotated-types0.7.0indirect
PyPIanyio4.13.0indirect
PyPIanyio4.2.0indirect
PyPIappnope0.1.3indirect
PyPIargilla1.21.0indirect
PyPIargon2-cffi23.1.0indirect
PyPIargon2-cffi-bindings21.2.0indirect
PyPIarro3-core0.8.0indirect
PyPIarrow1.3.0indirect
PyPIastrapy2.2.1indirect
PyPIasttokens2.4.1indirect
PyPIasttokens3.0.1indirect
PyPIasync-lru2.0.4indirect
PyPIasync-timeout4.0.3indirect
PyPIatlassian-python-api4.0.7indirect
PyPIattrs23.2.0indirect
PyPIattrs26.1.0indirect
PyPIaudioop-lts0.2.2indirect
PyPIauthlib1.6.9indirect
PyPIazure-common1.1.28indirect
PyPIazure-core1.39.0indirect
PyPIazure-datalake-store0.0.53indirect
PyPIazure-identity1.25.3indirect
PyPIazure-search-documents11.6.0indirect
PyPIazure-storage-blob12.28.0indirect
PyPIbabel2.14.0indirect
PyPIbackoff1.11.1indirect
PyPIbackoff2.2.1indirect
PyPIbackports-tarfile1.2.0indirect
PyPIbcrypt4.1.2indirect
PyPIbcrypt5.0.0indirect
PyPIbleach6.1.0indirect
PyPIblis1.3.3indirect
PyPIboto31.42.84indirect
PyPIbotocore1.42.84indirect
PyPIboxfs0.3.0indirect
PyPIboxsdk3.14.0indirect
PyPIbrotli1.1.0indirect
PyPIbrotli-asgi1.2.0indirect
PyPIbuild1.4.2indirect
PyPIcachetools7.0.5indirect
PyPIcatalogue2.0.10indirect
PyPIcertifi2023.11.17indirect
PyPIcertifi2026.2.25indirect
PyPIcffi1.16.0indirect
PyPIcffi2.0.0indirect
PyPIcfgv3.5.0indirect
PyPIchardet5.2.0indirect
PyPIchromadb1.5.7indirect
PyPIclick8.1.7indirect
PyPIclick8.3.2indirect
PyPIcloudpathlib0.23.0indirect
PyPIcohere6.0.0indirect
PyPIcolorama0.4.6indirect
PyPIcomm0.2.1indirect
PyPIconfection1.3.3indirect
PyPIconfluent-kafka2.14.0indirect
PyPIcontourpy1.3.3indirect
PyPIcouchbase4.6.0indirect
PyPIcoverage7.13.5indirect
PyPIcryptography41.0.2indirect
PyPIcryptography46.0.7indirect
PyPIcuda-bindings12.9.4indirect
PyPIcuda-pathfinder1.5.2indirect
PyPIcycler0.12.1indirect
PyPIcymem2.0.13indirect
PyPIcython3.2.4indirect
PyPIdatabricks-sdk0.102.0indirect
PyPIdataclasses-json0.6.3indirect
PyPIdatasets2.16.1indirect
PyPIdebugpy1.8.0indirect
PyPIdecorator5.1.1indirect
PyPIdecorator5.2.1indirect
PyPIdefusedxml0.7.1indirect
PyPIdeltalake1.2.1indirect
PyPIdeprecated1.2.14indirect
PyPIdeprecated1.3.1indirect
PyPIdeprecation2.1.0indirect
PyPIdill0.3.7indirect
PyPIdill0.4.1indirect
PyPIdiscord-py2.7.1indirect
PyPIdistlib0.4.0indirect
PyPIdistro1.9.0indirect
PyPIdnspython2.8.0indirect
PyPIdocstring-parser0.17.0indirect
PyPIdocutils0.22.4indirect
PyPIdropbox12.0.2indirect
PyPIdropboxdrivefs1.4.1indirect
PyPIdurationpy0.10indirect
PyPIecdsa0.18.0indirect
PyPIelastic-transport8.11.0indirect
PyPIelastic-transport8.17.1indirect
PyPIelasticsearch8.19.3indirect
PyPIelasticsearch88.7.0indirect
PyPIet-xmlfile2.0.0indirect
PyPIevents0.5indirect
PyPIexceptiongroup1.2.0indirect
PyPIexecnet2.1.2indirect
PyPIexecuting2.0.1indirect
PyPIexecuting2.2.1indirect
PyPIfastapi0.108.0indirect
PyPIfastavro1.12.1indirect
PyPIfastjsonschema2.19.1indirect
PyPIffmpeg-python0.2.0indirect
PyPIfire0.7.1indirect
PyPIflameprofindirect
PyPIflatbuffers25.12.19indirect
PyPIfonttools4.62.1indirect
PyPIfqdn1.5.1indirect
PyPIfreezegun1.5.5indirect
PyPIfrozenlist1.4.1indirect
PyPIfrozenlist1.8.0indirect
PyPIfsspec2023.10.0indirect
PyPIfsspec2026.3.0indirect
PyPIfuture1.0.0indirect
PyPIgcsfs2026.3.0indirect
PyPIgoogle-api-core2.30.2indirect
PyPIgoogle-api-python-client2.194.0indirect
PyPIgoogle-auth2.49.1indirect
PyPIgoogle-auth-httplib20.3.1indirect
PyPIgoogle-auth-oauthlib1.3.1indirect
PyPIgoogle-cloud-aiplatform1.147.0indirect
PyPIgoogle-cloud-bigquery3.41.0indirect
PyPIgoogle-cloud-core2.5.1indirect
PyPIgoogle-cloud-resource-manager1.17.0indirect
PyPIgoogle-cloud-storage3.10.1indirect
PyPIgoogle-cloud-storage-control1.11.0indirect
PyPIgoogle-cloud-vision3.13.0indirect
PyPIgoogle-crc32c1.8.0indirect
PyPIgoogle-genai1.71.0indirect
PyPIgoogle-resumable-media2.8.2indirect
PyPIgoogleapis-common-protos1.74.0indirect
PyPIgreenlet3.0.3indirect
PyPIgreenlet3.4.0indirect
PyPIgrpc-google-iam-v10.14.4indirect
PyPIgrpcio1.78.0indirect
PyPIgrpcio-status1.78.0indirect
PyPIh110.14.0indirect
PyPIh110.16.0indirect
PyPIh24.3.0indirect
PyPIhf-xet1.4.3indirect
PyPIhpack4.1.0indirect
PyPIhtmlbuilder1.0.0indirect
PyPIhttpcore0.18.0indirect
PyPIhttpcore1.0.9indirect
PyPIhttplib20.31.2indirect
PyPIhttptools0.6.1indirect
PyPIhttptools0.7.1indirect
PyPIhttpx0.25.0indirect
PyPIhttpx0.28.1indirect
PyPIhubspot-api-client12.0.0indirect
PyPIhuggingface-hub0.20.2indirect
PyPIhuggingface-hub1.10.1indirect
PyPIhyperframe6.1.0indirect
PyPIid1.6.1indirect
PyPIidentify2.6.18indirect
PyPIidna3.11indirect
PyPIidna3.6indirect
PyPIimageio2.37.3indirect
PyPIimportlib-metadata8.7.1indirect
PyPIimportlib-resources6.5.2indirect
PyPIinflection0.5.1indirect
PyPIiniconfig2.3.0indirect
PyPIinvoke3.0.3indirect
PyPIipykernel6.28.0indirect
PyPIipython8.20.0indirect
PyPIipython9.10.1indirect
PyPIipython9.12.0indirect
PyPIipython-pygments-lexers1.1.1indirect
PyPIipywidgets8.1.1indirect
PyPIisodate0.7.2indirect
PyPIisoduration20.11.0indirect
PyPIjaraco-classes3.4.0indirect
PyPIjaraco-context6.1.2indirect
PyPIjaraco-functools4.4.0indirect
PyPIjedi0.19.1indirect
PyPIjedi0.19.2indirect
PyPIjeepney0.9.0indirect
PyPIjinja23.1.2indirect
PyPIjinja23.1.6indirect
PyPIjiter0.13.0indirect
PyPIjmespath1.1.0indirect
PyPIjoblib1.3.2indirect
PyPIjoblib1.5.3indirect
PyPIjson50.9.14indirect
PyPIjsonpatch1.33indirect
PyPIjsonpath-python1.0.6indirect
PyPIjsonpointer2.4indirect
PyPIjsonpointer3.1.1indirect
PyPIjsonschema4.26.0indirect
PyPIjsonschema-specifications2023.12.1indirect
PyPIjsonschema-specifications2025.9.1indirect
PyPIjupyter1.0.0indirect
PyPIjupyter-client8.6.0indirect
PyPIjupyter-console6.6.3indirect
PyPIjupyter-core5.7.1indirect
PyPIjupyter-events0.9.0indirect
PyPIjupyter-lsp2.2.1indirect
PyPIjupyter-server2.12.2indirect
PyPIjupyter-server-terminals0.5.1indirect
PyPIjupyterlab4.0.10indirect
PyPIjupyterlab-pygments0.3.0indirect
PyPIjupyterlab-server2.25.2indirect
PyPIjupyterlab-widgets3.0.9indirect
PyPIkdbai-client1.9.0indirect
PyPIkeyring25.7.0indirect
PyPIkiwisolver1.5.0indirect
PyPIkubernetes35.0.0indirect
PyPIlangchain-core1.2.28indirect
PyPIlangchain-text-splitters1.1.1indirect
PyPIlangsmith0.7.29indirect
PyPIlazy-loader0.5indirect
PyPIlibrt0.9.0indirect
PyPIllvmlite0.47.0indirect
PyPImako1.3.0indirect
PyPImarkdown3.10.2indirect
PyPImarkdown-it-py3.0.0indirect
PyPImarkdown-it-py4.0.0indirect
PyPImarkupsafe2.1.3indirect
PyPImarkupsafe3.0.3indirect
PyPImarshmallow3.20.1indirect
PyPImatplotlib3.10.8indirect
PyPImatplotlib-inline0.1.6indirect
PyPImatplotlib-inline0.2.1indirect
PyPImdurl0.1.2indirect
PyPImemrayindirect
PyPImistune3.0.2indirect
PyPIml-dtypes0.5.4indirect
PyPImmh35.2.1indirect
PyPImonotonic1.6indirect
PyPImore-itertools11.0.2indirect
PyPImpmath1.3.0indirect
PyPImsal1.36.0indirect
PyPImsal-extensions1.3.1indirect
PyPImsoffcrypto-tool6.0.0indirect
PyPImultidict6.0.4indirect
PyPImultidict6.7.1indirect
PyPImultiprocess0.70.15indirect
PyPImurmurhash1.0.15indirect
PyPImypy1.20.0indirect
PyPImypy-extensions1.0.0indirect
PyPImypy-extensions1.1.0indirect
PyPInbclient0.9.0indirect
PyPInbconvert7.14.0indirect
PyPInbformat5.9.2indirect
PyPInest-asyncio1.5.8indirect
PyPInetworkx3.2.1indirect
PyPInetworkx3.6.1indirect
PyPInltk3.8.1indirect
PyPInodeenv1.10.0indirect
PyPInotebook7.0.6indirect
PyPInotebook-shim0.2.3indirect
PyPInotion-client3.0.0indirect
PyPInvidia-cublas-cu1212.8.4.1indirect
PyPInvidia-cuda-cupti-cu1212.8.90indirect
PyPInvidia-cuda-nvrtc-cu1212.8.93indirect
PyPInvidia-cuda-runtime-cu1212.8.90indirect
PyPInvidia-cudnn-cu129.10.2.21indirect
PyPInvidia-cufft-cu1211.3.3.83indirect
PyPInvidia-cufile-cu121.13.1.3indirect
PyPInvidia-curand-cu1210.3.9.90indirect
PyPInvidia-cusolver-cu1211.7.3.90indirect
PyPInvidia-cusparse-cu1212.5.8.93indirect
PyPInvidia-cusparselt-cu120.7.1indirect
PyPInvidia-nccl-cu122.27.5indirect
PyPInvidia-nvjitlink-cu1212.8.93indirect
PyPInvidia-nvshmem-cu123.4.5indirect
PyPInvidia-nvtx-cu1212.8.90indirect
PyPIoauthlib3.3.1indirect
PyPIoffice365-rest-python-client2.6.2indirect
PyPIolefile0.47indirect
PyPIonnx1.21.0indirect
PyPIonnxruntime1.24.4indirect
PyPIonnxruntime1.25.0indirect
PyPIopenai2.31.0indirect
PyPIopenai-whisper20250625indirect
PyPIopencv-contrib-python4.13.0.92indirect
PyPIopencv-python4.13.0.92indirect
PyPIopencv-python-headless4.13.0.92indirect
PyPIopenpyxl3.1.5indirect
PyPIopensearch-py2.0.1indirect
PyPIopensearch-py2.8.0indirect
PyPIopentelemetry-api1.41.0indirect
PyPIopentelemetry-exporter-otlp-proto-common1.41.0indirect
PyPIopentelemetry-exporter-otlp-proto-grpc1.41.0indirect
PyPIopentelemetry-proto1.41.0indirect
PyPIopentelemetry-sdk1.41.0indirect
PyPIopentelemetry-semantic-conventions0.62b0indirect
PyPIopt-einsum3.3.0indirect
PyPIorjson3.11.8indirect
PyPIoverrides7.4.0indirect
PyPIoverrides7.7.0indirect
PyPIpackaging23.2indirect
PyPIpackaging26.0indirect
PyPIpaddlepaddle3.3.1indirect
PyPIpandas1.5.3indirect
PyPIpandas2.3.3indirect
PyPIpandocfilters1.5.0indirect
PyPIparamiko4.0.0indirect
PyPIparsimonious0.11.0indirect
PyPIparso0.8.3indirect
PyPIparso0.8.6indirect
PyPIpasslib1.7.4indirect
PyPIpathspec1.0.4indirect
PyPIpdf2image1.17.0indirect
PyPIpdfminer-six20260107indirect
PyPIpexpect4.9.0indirect
PyPIpi-heif1.3.0indirect
PyPIpikepdf10.5.1indirect
PyPIpillow12.2.0indirect
PyPIpinecone8.1.2indirect
PyPIpinecone-plugin-assistant3.0.3indirect
PyPIpinecone-plugin-interface0.0.7indirect
PyPIpip-licenses5.5.5indirect
PyPIplatformdirs4.1.0indirect
PyPIplatformdirs4.9.6indirect
PyPIpluggy1.6.0indirect
PyPIply3.11indirect
PyPIportalocker3.2.0indirect
PyPIpraw7.8.1indirect
PyPIprawcore2.4.0indirect
PyPIpre-commit4.5.1indirect
PyPIpreshed3.0.13indirect
PyPIprettytable3.17.0indirect
PyPIprometheus-client0.19.0indirect
PyPIprompt-toolkit3.0.43indirect
PyPIprompt-toolkit3.0.52indirect
PyPIpropcache0.4.1indirect
PyPIproto-plus1.27.2indirect
PyPIprotobuf6.33.6indirect
PyPIpsycopg2-binary2.9.11indirect
PyPIptyprocess0.7.0indirect
PyPIpure-eval0.2.2indirect
PyPIpure-eval0.2.3indirect
PyPIpy-cpuinfo9.0.0indirect
PyPIpy-spyindirect
PyPIpyairtable3.3.0indirect
PyPIpyarrow14.0.2indirect
PyPIpyarrow23.0.1indirect
PyPIpyarrow-hotfix0.6indirect
PyPIpyasn10.5.1indirect
PyPIpyasn10.6.3indirect
PyPIpyasn1-modules0.4.2indirect
PyPIpybase641.4.3indirect
PyPIpycares5.0.1indirect
PyPIpyclipper1.4.0indirect
PyPIpycparser2.21indirect
PyPIpycparser3.0indirect
PyPIpydantic1.10.13indirect
PyPIpydantic2.12.5indirect
PyPIpydantic-core2.41.5indirect
PyPIpydantic-settings2.13.1indirect
PyPIpygithub2.9.0indirect
PyPIpygments2.17.2indirect
PyPIpygments2.20.0indirect
PyPIpyjwt2.12.1indirect
PyPIpykx3.1.9indirect
PyPIpymilvus2.6.12indirect
PyPIpymongo4.16.0indirect
PyPIpynacl1.6.2indirect
PyPIpypandoc-binary1.17indirect
PyPIpyparsing3.3.2indirect
PyPIpypdf6.10.0indirect
PyPIpypdfium25.7.0indirect
PyPIpypika0.51.1indirect
PyPIpyproject-hooks1.2.0indirect
PyPIpytest9.0.3indirect
PyPIpytest-benchmark5.2.3indirect
PyPIpytest-cov7.1.0indirect
PyPIpytest-mock3.15.1indirect
PyPIpytest-xdist3.8.0indirect
PyPIpython-dateutil2.8.2indirect
PyPIpython-dateutil2.9.0.post0indirect
PyPIpython-discovery1.2.2indirect
PyPIpython-docx1.2.0indirect
PyPIpython-dotenv1.0.0indirect
PyPIpython-dotenv1.2.2indirect
PyPIpython-gitlab8.2.0indirect
PyPIpython-jose3.3.0indirect
PyPIpython-json-logger2.0.7indirect
PyPIpython-multipart0.0.6indirect
PyPIpython-pptx1.0.2indirect
PyPIpytz2023.3.post1indirect
PyPIpytz2026.1.post1indirect
PyPIpywin32311indirect
PyPIpywin32-ctypes0.2.3indirect
PyPIpyyaml6.0.1indirect
PyPIpyyaml6.0.3indirect
PyPIpyzmq25.1.2indirect
PyPIqdrant-client1.17.1indirect
PyPIqtconsole5.5.1indirect
PyPIqtpy2.4.1indirect
PyPIreadme-renderer44.0indirect
PyPIreferencing0.32.1indirect
PyPIreferencing0.37.0indirect
PyPIrequests-file3.0.1indirect
PyPIrequests-oauthlib2.0.0indirect
PyPIrequests-toolbelt1.0.0indirect
PyPIrfc3339-validator0.1.4indirect
PyPIrfc39862.0.0indirect
PyPIrfc3986-validator0.1.1indirect
PyPIrich13.7.0indirect
PyPIrich14.3.3indirect
PyPIrpds-py0.16.2indirect
PyPIrpds-py0.30.0indirect
PyPIrsa4.9indirect
PyPIruff0.15.10indirect
PyPIs3fs2026.3.0indirect
PyPIs3transfer0.16.0indirect
PyPIsafetensors0.4.1indirect
PyPIsafetensors0.7.0indirect
PyPIscikit-image0.26.0indirect
PyPIscikit-learn1.3.2indirect
PyPIscikit-learn1.8.0indirect
PyPIscipy1.11.4indirect
PyPIscipy1.17.1indirect
PyPIsecretstorage3.5.0indirect
PyPIsegment-analytics-python2.2.0indirect
PyPIsend2trash1.8.2indirect
PyPIsentence-transformers5.4.0indirect
PyPIsentencepiece0.2.1indirect
PyPIsetuptools82.0.1indirect
PyPIshapely2.1.2indirect
PyPIshellingham1.5.4indirect
PyPIsimple-salesforce1.12.9indirect
PyPIsimsimd6.5.16indirect
PyPIsinglestoredb1.16.9indirect
PyPIsix1.16.0indirect
PyPIsix1.17.0indirect
PyPIslack-sdk3.41.0indirect
PyPIsmart-open6.4.0indirect
PyPIsmart-open7.5.1indirect
PyPIsnakevizindirect
PyPIsniffio1.3.0indirect
PyPIsniffio1.3.1indirect
PyPIsoupsieve2.5indirect
PyPIsoupsieve2.8.3indirect
PyPIspacy-legacy3.0.12indirect
PyPIspacy-loggers1.0.5indirect
PyPIsqlalchemy2.0.25indirect
PyPIsqlalchemy2.0.49indirect
PyPIsqlparams6.2.0indirect
PyPIsrsly2.5.3indirect
PyPIstack-data0.6.3indirect
PyPIstarlette0.32.0.post1indirect
PyPIstone3.3.1indirect
PyPIstringzilla4.6.0indirect
PyPIsympy1.12indirect
PyPIsympy1.14.0indirect
PyPItabulate0.9.0indirect
PyPItenacity9.1.4indirect
PyPItermcolor3.3.0indirect
PyPIterminado0.18.0indirect
PyPIthinc8.3.13indirect
PyPIthreadpoolctl3.2.0indirect
PyPIthreadpoolctl3.6.0indirect
PyPItifffile2026.3.3indirect
PyPItiktoken0.12.0indirect
PyPItimm1.0.26indirect
PyPItinycss21.2.1indirect
PyPItokenizers0.15.0indirect
PyPItokenizers0.22.2indirect
PyPItoml0.10.2indirect
PyPItomli2.0.1indirect
PyPItomli2.4.1indirect
PyPItorch2.1.2indirect
PyPItorch2.10.0indirect
PyPItorchvision0.25.0indirect
PyPItornado6.4indirect
PyPItraitlets5.14.1indirect
PyPItraitlets5.14.3indirect
PyPItransformers4.36.2indirect
PyPItransformers5.5.3indirect
PyPItriton3.6.0indirect
PyPItwine6.2.0indirect
PyPItyper0.24.1indirect
PyPItyper0.9.0indirect
PyPItypes-click7.1.8indirect
PyPItypes-markdown3.10.2.20260408indirect
PyPItypes-python-dateutil2.8.19.20240106indirect
PyPItypes-requests2.33.0.20260408indirect
PyPItypes-tabulate0.10.0.20260408indirect
PyPItyping-inspect0.9.0indirect
PyPItyping-inspection0.4.2indirect
PyPItzdata2026.1indirect
PyPIunstructured0.11.8indirect
PyPIunstructured-inference1.6.12indirect
PyPIunstructured-ingest1.4.20indirect
PyPIunstructured-paddleocr2.10.0indirect
PyPIunstructured-pytesseract0.3.15indirect
PyPIupdate-checker0.18.0indirect
PyPIuri-template1.3.0indirect
PyPIuritemplate4.2.0indirect
PyPIurllib31.26.18indirect
PyPIurllib32.6.3indirect
PyPIuuid-utils0.14.1indirect
PyPIuuid62025.0.1indirect
PyPIuvicorn0.20.0indirect
PyPIuvicorn0.44.0indirect
PyPIuvloop0.19.0indirect
PyPIuvloop0.22.1indirect
PyPIvalidators0.35.0indirect
PyPIvertexai1.43.0indirect
PyPIvirtualenv21.2.1indirect
PyPIvoyageai0.3.7indirect
PyPIwasabi1.1.3indirect
PyPIwatchfiles0.21.0indirect
PyPIwatchfiles1.1.1indirect
PyPIwcwidth0.2.13indirect
PyPIwcwidth0.6.0indirect
PyPIweasel1.0.0indirect
PyPIweaviate-client4.20.4indirect
PyPIwebcolors1.13indirect
PyPIwebencodings0.5.1indirect
PyPIwebsocket-client1.7.0indirect
PyPIwebsocket-client1.9.0indirect
PyPIwebsockets12.0indirect
PyPIwebsockets15.0.1indirect
PyPIwidgetsnbextension4.0.9indirect
PyPIwikipedia1.4.0indirect
PyPIxlrd2.0.2indirect
PyPIxlsxwriter3.2.9indirect
PyPIxxhash3.4.1indirect
PyPIxxhash3.6.0indirect
PyPIyarl1.23.0indirect
PyPIyarl1.9.4indirect
PyPIzeep4.3.2indirect
PyPIzipp3.23.0indirect
PyPIzstandard0.25.0indirect
Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [
        "deep-learning",
        "document-parsing",
        "machine-learning",
        "nlp",
        "ocr",
        "information-retrieval",
        "data-pipelines",
        "ml",
        "preprocessing",
        "pdf-to-text",
        "natural-language-processing",
        "pdf",
        "pdf-to-json",
        "document-image-analysis",
        "donut",
        "document-image-processing",
        "document-parser",
        "docx",
        "langchain",
        "llm"
      ],
      "is_fork": false,
      "size_kb": 237790,
      "has_wiki": true,
      "homepage": "https://www.unstructured.io/",
      "languages": {
        "Go": 70,
        "HTML": 27084827,
        "XSLT": 758,
        "Shell": 192872,
        "Python": 2829930,
        "Makefile": 5848,
        "Dockerfile": 5434,
        "Rich Text Format": 169362
      },
      "pushed_at": "2026-07-15T21:10:36Z",
      "created_at": "2022-09-26T21:53:41Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-18T12:41:40Z",
      "description": "Convert documents to structured data effortlessly. Unstructured is open-source ETL solution for transforming complex documents into clean, structured formats for language models.  Visit our website to learn more about our enterprise grade Platform product for production grade workflows, partitioning, enrichments, chunking and embedding.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "primary_language": "HTML",
      "significant_languages": [
        "HTML"
      ]
    },
    "owner": {
      "blog": "https://unstructured.io/",
      "name": "Unstructured",
      "type": "Organization",
      "login": "Unstructured-IO",
      "company": null,
      "followers": 1498,
      "avatar_url": "https://avatars.githubusercontent.com/u/108372208?v=4",
      "created_at": "2022-06-28T21:55:39Z",
      "is_verified": null,
      "public_repos": 45,
      "account_age_days": 1480
    },
    "activity": {
      "releases_count": 100,
      "commits_last_year": 149,
      "latest_release_at": "2026-07-11T23:53:05Z",
      "latest_release_tag": "0.24.1",
      "releases_from_tags": false,
      "days_since_last_push": 2,
      "active_weeks_last_year": 39,
      "days_since_latest_release": 6,
      "mean_days_between_releases": 7.5
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 87,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "unstructured",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "CV",
            "HTML",
            "NLP",
            "PDF",
            "XML",
            "parsing",
            "preprocessing",
            "Development Status :: 4 - Beta",
            "Intended Audience :: Developers",
            "Intended Audience :: Education",
            "Intended Audience :: Science/Research",
            "License :: OSI Approved :: Apache Software License",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Topic :: Scientific/Engineering :: Artificial Intelligence"
          ],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/unstructured/",
          "is_deprecated": false,
          "latest_version": "0.24.1",
          "repository_url": "https://github.com/Unstructured-IO/unstructured",
          "versions_count": 228,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 5086695,
          "first_published_at": "2022-09-06T20:08:36.204064Z",
          "latest_published_at": "2026-07-11T23:53:35.604891Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 6
        }
      ]
    },
    "popularity": {
      "forks": 1274,
      "stars": 15156,
      "watchers": 73,
      "open_issues_and_prs": 276
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "unstructured/py.typed"
      ],
      "largest_source_bytes": 145235,
      "source_files_sampled": 293,
      "oversized_source_files": 4,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "pyproject.toml"
      ],
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [
        {
          "name": "beautifulsoup4",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.14.3, <5.0.0"
        },
        {
          "name": "charset-normalizer",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.4.4, <4.0.0"
        },
        {
          "name": "emoji",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.15.0, <3.0.0"
        },
        {
          "name": "filetype",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.2.0, <2.0.0"
        },
        {
          "name": "html5lib",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.1, <2.0.0"
        },
        {
          "name": "langdetect",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.0.9, <2.0.0"
        },
        {
          "name": "lxml",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=5.0.0, <7.0.0"
        },
        {
          "name": "nh3",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.3.0, <1.0.0"
        },
        {
          "name": "spacy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.7.0, <4.0.0"
        },
        {
          "name": "installer",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.7.0, <1.0.0"
        },
        {
          "name": "numba",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.60.0, <1.0.0"
        },
        {
          "name": "numpy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.26.0, <3.0.0"
        },
        {
          "name": "psutil",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=7.2.2, <8.0.0"
        },
        {
          "name": "python-iso639",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2026.1.31, <2027.0.0"
        },
        {
          "name": "python-magic",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.4.27, <1.0.0"
        },
        {
          "name": "python-oxmsg",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.0.2, <1.0.0"
        },
        {
          "name": "rapidfuzz",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.14.3, <4.0.0"
        },
        {
          "name": "regex",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2024.0.0, <2027.0.0"
        },
        {
          "name": "requests",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.32.5, <3.0.0"
        },
        {
          "name": "tqdm",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.67.3, <5.0.0"
        },
        {
          "name": "typing-extensions",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.15.0, <5.0.0"
        },
        {
          "name": "unstructured-client",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.25.9, <1.0.0"
        },
        {
          "name": "wrapt",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.1.1, <3.0.0"
        },
        {
          "name": "filelock",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.12.0,<4.0.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "beautifulsoup4",
            "direct": true,
            "version": "4.12.2",
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": true,
            "version": "4.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": true,
            "version": "3.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": true,
            "version": "3.4.7",
            "ecosystem": "pypi"
          },
          {
            "name": "emoji",
            "direct": true,
            "version": "2.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "emoji",
            "direct": true,
            "version": "2.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": true,
            "version": "3.13.1",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": true,
            "version": "3.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "filetype",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "html5lib",
            "direct": true,
            "version": "1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "installer",
            "direct": true,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langdetect",
            "direct": true,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": true,
            "version": "5.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": true,
            "version": "6.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nh3",
            "direct": true,
            "version": "0.3.4",
            "ecosystem": "pypi"
          },
          {
            "name": "numba",
            "direct": true,
            "version": "0.65.0",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": "1.23.5",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": "2.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "psutil",
            "direct": true,
            "version": "5.9.7",
            "ecosystem": "pypi"
          },
          {
            "name": "psutil",
            "direct": true,
            "version": "7.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-iso639",
            "direct": true,
            "version": "2024.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-iso639",
            "direct": true,
            "version": "2026.1.31",
            "ecosystem": "pypi"
          },
          {
            "name": "python-magic",
            "direct": true,
            "version": "0.4.27",
            "ecosystem": "pypi"
          },
          {
            "name": "python-oxmsg",
            "direct": true,
            "version": "0.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rapidfuzz",
            "direct": true,
            "version": "3.14.5",
            "ecosystem": "pypi"
          },
          {
            "name": "rapidfuzz",
            "direct": true,
            "version": "3.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": true,
            "version": "2023.12.25",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": true,
            "version": "2026.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": true,
            "version": "2.31.0",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": true,
            "version": "2.33.1",
            "ecosystem": "pypi"
          },
          {
            "name": "spacy",
            "direct": true,
            "version": "3.8.14",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": true,
            "version": "4.66.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": true,
            "version": "4.67.3",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": true,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": true,
            "version": "4.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-client",
            "direct": true,
            "version": "0.15.2",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-client",
            "direct": true,
            "version": "0.43.2",
            "ecosystem": "pypi"
          },
          {
            "name": "wrapt",
            "direct": true,
            "version": "1.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "wrapt",
            "direct": true,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "accelerate",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "adlfs",
            "direct": false,
            "version": "2026.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aioboto3",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiobotocore",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiodns",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiofiles",
            "direct": false,
            "version": "22.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiofiles",
            "direct": false,
            "version": "25.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohappyeyeballs",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohttp",
            "direct": false,
            "version": "3.13.5",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohttp",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aioitertools",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiolimiter",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosignal",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosignal",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosqlite",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "pypi"
          },
          {
            "name": "albucore",
            "direct": false,
            "version": "0.0.24",
            "ecosystem": "pypi"
          },
          {
            "name": "albumentations",
            "direct": false,
            "version": "2.0.8",
            "ecosystem": "pypi"
          },
          {
            "name": "alembic",
            "direct": false,
            "version": "1.9.4",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-doc",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "appnope",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "argilla",
            "direct": false,
            "version": "1.21.0",
            "ecosystem": "pypi"
          },
          {
            "name": "argon2-cffi",
            "direct": false,
            "version": "23.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "argon2-cffi-bindings",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "arro3-core",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "arrow",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "astrapy",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "asttokens",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "asttokens",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "async-lru",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "async-timeout",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "atlassian-python-api",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "23.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "audioop-lts",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": "1.6.9",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-common",
            "direct": false,
            "version": "1.1.28",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-core",
            "direct": false,
            "version": "1.39.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-datalake-store",
            "direct": false,
            "version": "0.0.53",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-identity",
            "direct": false,
            "version": "1.25.3",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-search-documents",
            "direct": false,
            "version": "11.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-storage-blob",
            "direct": false,
            "version": "12.28.0",
            "ecosystem": "pypi"
          },
          {
            "name": "babel",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "backoff",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "pypi"
          },
          {
            "name": "backoff",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "backports-tarfile",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "bcrypt",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "bcrypt",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "bleach",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "blis",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "boto3",
            "direct": false,
            "version": "1.42.84",
            "ecosystem": "pypi"
          },
          {
            "name": "botocore",
            "direct": false,
            "version": "1.42.84",
            "ecosystem": "pypi"
          },
          {
            "name": "boxfs",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "boxsdk",
            "direct": false,
            "version": "3.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "brotli",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "brotli-asgi",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "build",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "catalogue",
            "direct": false,
            "version": "2.0.10",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2023.11.17",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2026.2.25",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cfgv",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "chromadb",
            "direct": false,
            "version": "1.5.7",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.1.7",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cloudpathlib",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cohere",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "comm",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "confection",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "confluent-kafka",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "contourpy",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "couchbase",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "coverage",
            "direct": false,
            "version": "7.13.5",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "41.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-bindings",
            "direct": false,
            "version": "12.9.4",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-pathfinder",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cycler",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cymem",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "pypi"
          },
          {
            "name": "cython",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "pypi"
          },
          {
            "name": "databricks-sdk",
            "direct": false,
            "version": "0.102.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dataclasses-json",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "datasets",
            "direct": false,
            "version": "2.16.1",
            "ecosystem": "pypi"
          },
          {
            "name": "debugpy",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "decorator",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "decorator",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "defusedxml",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "deltalake",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "deprecated",
            "direct": false,
            "version": "1.2.14",
            "ecosystem": "pypi"
          },
          {
            "name": "deprecated",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "deprecation",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dill",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "pypi"
          },
          {
            "name": "dill",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "discord-py",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "distlib",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "distro",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dnspython",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docutils",
            "direct": false,
            "version": "0.22.4",
            "ecosystem": "pypi"
          },
          {
            "name": "dropbox",
            "direct": false,
            "version": "12.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "dropboxdrivefs",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "durationpy",
            "direct": false,
            "version": "0.10",
            "ecosystem": "pypi"
          },
          {
            "name": "ecdsa",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "elastic-transport",
            "direct": false,
            "version": "8.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "elastic-transport",
            "direct": false,
            "version": "8.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "elasticsearch",
            "direct": false,
            "version": "8.19.3",
            "ecosystem": "pypi"
          },
          {
            "name": "elasticsearch8",
            "direct": false,
            "version": "8.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "et-xmlfile",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "events",
            "direct": false,
            "version": "0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "exceptiongroup",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "execnet",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "executing",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "executing",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi",
            "direct": false,
            "version": "0.108.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fastavro",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fastjsonschema",
            "direct": false,
            "version": "2.19.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ffmpeg-python",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fire",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "flameprof",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "pypi"
          },
          {
            "name": "fonttools",
            "direct": false,
            "version": "4.62.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fqdn",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "freezegun",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "pypi"
          },
          {
            "name": "frozenlist",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "frozenlist",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2023.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2026.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "future",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "gcsfs",
            "direct": false,
            "version": "2026.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-api-core",
            "direct": false,
            "version": "2.30.2",
            "ecosystem": "pypi"
          },
          {
            "name": "google-api-python-client",
            "direct": false,
            "version": "2.194.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-auth",
            "direct": false,
            "version": "2.49.1",
            "ecosystem": "pypi"
          },
          {
            "name": "google-auth-httplib2",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "google-auth-oauthlib",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-aiplatform",
            "direct": false,
            "version": "1.147.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-bigquery",
            "direct": false,
            "version": "3.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-core",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-resource-manager",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-storage",
            "direct": false,
            "version": "3.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-storage-control",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-vision",
            "direct": false,
            "version": "3.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-crc32c",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-genai",
            "direct": false,
            "version": "1.71.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-resumable-media",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "googleapis-common-protos",
            "direct": false,
            "version": "1.74.0",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grpc-google-iam-v1",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.78.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio-status",
            "direct": false,
            "version": "1.78.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "hpack",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "htmlbuilder",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "httplib2",
            "direct": false,
            "version": "0.31.2",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "hubspot-api-client",
            "direct": false,
            "version": "12.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "hyperframe",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "id",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "identify",
            "direct": false,
            "version": "2.6.18",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.11",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.6",
            "ecosystem": "pypi"
          },
          {
            "name": "imageio",
            "direct": false,
            "version": "2.37.3",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-metadata",
            "direct": false,
            "version": "8.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-resources",
            "direct": false,
            "version": "6.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "inflection",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "invoke",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "ipykernel",
            "direct": false,
            "version": "6.28.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ipython",
            "direct": false,
            "version": "8.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ipython",
            "direct": false,
            "version": "9.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ipython",
            "direct": false,
            "version": "9.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ipython-pygments-lexers",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ipywidgets",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "isodate",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "isoduration",
            "direct": false,
            "version": "20.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-classes",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-context",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-functools",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jedi",
            "direct": false,
            "version": "0.19.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jedi",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jeepney",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": false,
            "version": "3.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jmespath",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "0.9.14",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpatch",
            "direct": false,
            "version": "1.33",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpath-python",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "2.4",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2023.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-client",
            "direct": false,
            "version": "8.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-console",
            "direct": false,
            "version": "6.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-core",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-events",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-lsp",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-server",
            "direct": false,
            "version": "2.12.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-server-terminals",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyterlab",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyterlab-pygments",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyterlab-server",
            "direct": false,
            "version": "2.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyterlab-widgets",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "kdbai-client",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "keyring",
            "direct": false,
            "version": "25.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "kiwisolver",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "kubernetes",
            "direct": false,
            "version": "35.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-core",
            "direct": false,
            "version": "1.2.28",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-text-splitters",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.7.29",
            "ecosystem": "pypi"
          },
          {
            "name": "lazy-loader",
            "direct": false,
            "version": "0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "librt",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "llvmlite",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mako",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown",
            "direct": false,
            "version": "3.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "marshmallow",
            "direct": false,
            "version": "3.20.1",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib",
            "direct": false,
            "version": "3.10.8",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib-inline",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib-inline",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "memray",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mistune",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "ml-dtypes",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "mmh3",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "monotonic",
            "direct": false,
            "version": "1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "more-itertools",
            "direct": false,
            "version": "11.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mpmath",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "msal",
            "direct": false,
            "version": "1.36.0",
            "ecosystem": "pypi"
          },
          {
            "name": "msal-extensions",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "msoffcrypto-tool",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "multidict",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "multidict",
            "direct": false,
            "version": "6.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "multiprocess",
            "direct": false,
            "version": "0.70.15",
            "ecosystem": "pypi"
          },
          {
            "name": "murmurhash",
            "direct": false,
            "version": "1.0.15",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy-extensions",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy-extensions",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nbclient",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nbconvert",
            "direct": false,
            "version": "7.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nbformat",
            "direct": false,
            "version": "5.9.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nest-asyncio",
            "direct": false,
            "version": "1.5.8",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nltk",
            "direct": false,
            "version": "3.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nodeenv",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "notebook",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "notebook-shim",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "notion-client",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cublas-cu12",
            "direct": false,
            "version": "12.8.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-cupti-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-nvrtc-cu12",
            "direct": false,
            "version": "12.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-runtime-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cudnn-cu12",
            "direct": false,
            "version": "9.10.2.21",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufft-cu12",
            "direct": false,
            "version": "11.3.3.83",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufile-cu12",
            "direct": false,
            "version": "1.13.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-curand-cu12",
            "direct": false,
            "version": "10.3.9.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusolver-cu12",
            "direct": false,
            "version": "11.7.3.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparse-cu12",
            "direct": false,
            "version": "12.5.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparselt-cu12",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nccl-cu12",
            "direct": false,
            "version": "2.27.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvjitlink-cu12",
            "direct": false,
            "version": "12.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvshmem-cu12",
            "direct": false,
            "version": "3.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvtx-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "oauthlib",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "office365-rest-python-client",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "olefile",
            "direct": false,
            "version": "0.47",
            "ecosystem": "pypi"
          },
          {
            "name": "onnx",
            "direct": false,
            "version": "1.21.0",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.24.4",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": false,
            "version": "2.31.0",
            "ecosystem": "pypi"
          },
          {
            "name": "openai-whisper",
            "direct": false,
            "version": "20250625",
            "ecosystem": "pypi"
          },
          {
            "name": "opencv-contrib-python",
            "direct": false,
            "version": "4.13.0.92",
            "ecosystem": "pypi"
          },
          {
            "name": "opencv-python",
            "direct": false,
            "version": "4.13.0.92",
            "ecosystem": "pypi"
          },
          {
            "name": "opencv-python-headless",
            "direct": false,
            "version": "4.13.0.92",
            "ecosystem": "pypi"
          },
          {
            "name": "openpyxl",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "opensearch-py",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opensearch-py",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-api",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-common",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-grpc",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-proto",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-sdk",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-semantic-conventions",
            "direct": false,
            "version": "0.62b0",
            "ecosystem": "pypi"
          },
          {
            "name": "opt-einsum",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.8",
            "ecosystem": "pypi"
          },
          {
            "name": "overrides",
            "direct": false,
            "version": "7.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "overrides",
            "direct": false,
            "version": "7.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "23.2",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "paddlepaddle",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pandocfilters",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "paramiko",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "parsimonious",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "parso",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "pypi"
          },
          {
            "name": "parso",
            "direct": false,
            "version": "0.8.6",
            "ecosystem": "pypi"
          },
          {
            "name": "passlib",
            "direct": false,
            "version": "1.7.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pathspec",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pdf2image",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfminer-six",
            "direct": false,
            "version": "20260107",
            "ecosystem": "pypi"
          },
          {
            "name": "pexpect",
            "direct": false,
            "version": "4.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pi-heif",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pikepdf",
            "direct": false,
            "version": "10.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": "12.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pinecone",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pinecone-plugin-assistant",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pinecone-plugin-interface",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "pip-licenses",
            "direct": false,
            "version": "5.5.5",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.9.6",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ply",
            "direct": false,
            "version": "3.11",
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "praw",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "prawcore",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pre-commit",
            "direct": false,
            "version": "4.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "preshed",
            "direct": false,
            "version": "3.0.13",
            "ecosystem": "pypi"
          },
          {
            "name": "prettytable",
            "direct": false,
            "version": "3.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "prometheus-client",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "pypi"
          },
          {
            "name": "prompt-toolkit",
            "direct": false,
            "version": "3.0.43",
            "ecosystem": "pypi"
          },
          {
            "name": "prompt-toolkit",
            "direct": false,
            "version": "3.0.52",
            "ecosystem": "pypi"
          },
          {
            "name": "propcache",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "proto-plus",
            "direct": false,
            "version": "1.27.2",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "6.33.6",
            "ecosystem": "pypi"
          },
          {
            "name": "psycopg2-binary",
            "direct": false,
            "version": "2.9.11",
            "ecosystem": "pypi"
          },
          {
            "name": "ptyprocess",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pure-eval",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pure-eval",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "py-cpuinfo",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "py-spy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyairtable",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow",
            "direct": false,
            "version": "14.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow",
            "direct": false,
            "version": "23.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow-hotfix",
            "direct": false,
            "version": "0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1-modules",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pybase64",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pycares",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyclipper",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "2.21",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "1.10.13",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.12.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.41.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.13.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pygithub",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.17.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pykx",
            "direct": false,
            "version": "3.1.9",
            "ecosystem": "pypi"
          },
          {
            "name": "pymilvus",
            "direct": false,
            "version": "2.6.12",
            "ecosystem": "pypi"
          },
          {
            "name": "pymongo",
            "direct": false,
            "version": "4.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pynacl",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pypandoc-binary",
            "direct": false,
            "version": "1.17",
            "ecosystem": "pypi"
          },
          {
            "name": "pyparsing",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdf",
            "direct": false,
            "version": "6.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdfium2",
            "direct": false,
            "version": "5.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pypika",
            "direct": false,
            "version": "0.51.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyproject-hooks",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "9.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-benchmark",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-mock",
            "direct": false,
            "version": "3.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-xdist",
            "direct": false,
            "version": "3.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": "2.9.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-discovery",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-docx",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-gitlab",
            "direct": false,
            "version": "8.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-jose",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-json-logger",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "python-multipart",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "python-pptx",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2023.3.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2026.1.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32",
            "direct": false,
            "version": "311",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32-ctypes",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyzmq",
            "direct": false,
            "version": "25.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "qtconsole",
            "direct": false,
            "version": "5.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "qtpy",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "readme-renderer",
            "direct": false,
            "version": "44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.32.1",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-file",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-oauthlib",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-toolbelt",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3339-validator",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3986",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3986-validator",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "13.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "14.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.16.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rsa",
            "direct": false,
            "version": "4.9",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.15.10",
            "ecosystem": "pypi"
          },
          {
            "name": "s3fs",
            "direct": false,
            "version": "2026.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "s3transfer",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-image",
            "direct": false,
            "version": "0.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.11.4",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "secretstorage",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "segment-analytics-python",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "send2trash",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "sentence-transformers",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sentencepiece",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": "82.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "shapely",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "shellingham",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "simple-salesforce",
            "direct": false,
            "version": "1.12.9",
            "ecosystem": "pypi"
          },
          {
            "name": "simsimd",
            "direct": false,
            "version": "6.5.16",
            "ecosystem": "pypi"
          },
          {
            "name": "singlestoredb",
            "direct": false,
            "version": "1.16.9",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "slack-sdk",
            "direct": false,
            "version": "3.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "smart-open",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "smart-open",
            "direct": false,
            "version": "7.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "snakeviz",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sniffio",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sniffio",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.5",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "pypi"
          },
          {
            "name": "spacy-legacy",
            "direct": false,
            "version": "3.0.12",
            "ecosystem": "pypi"
          },
          {
            "name": "spacy-loggers",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": false,
            "version": "2.0.25",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": false,
            "version": "2.0.49",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlparams",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "srsly",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "stack-data",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.32.0.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "stone",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "stringzilla",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sympy",
            "direct": false,
            "version": "1.12",
            "ecosystem": "pypi"
          },
          {
            "name": "sympy",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tabulate",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tenacity",
            "direct": false,
            "version": "9.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "termcolor",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "terminado",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "thinc",
            "direct": false,
            "version": "8.3.13",
            "ecosystem": "pypi"
          },
          {
            "name": "threadpoolctl",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "threadpoolctl",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tifffile",
            "direct": false,
            "version": "2026.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "tiktoken",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "timm",
            "direct": false,
            "version": "1.0.26",
            "ecosystem": "pypi"
          },
          {
            "name": "tinycss2",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.22.2",
            "ecosystem": "pypi"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "torchvision",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tornado",
            "direct": false,
            "version": "6.4",
            "ecosystem": "pypi"
          },
          {
            "name": "traitlets",
            "direct": false,
            "version": "5.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "traitlets",
            "direct": false,
            "version": "5.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": false,
            "version": "4.36.2",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": false,
            "version": "5.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "twine",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.24.1",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "types-click",
            "direct": false,
            "version": "7.1.8",
            "ecosystem": "pypi"
          },
          {
            "name": "types-markdown",
            "direct": false,
            "version": "3.10.2.20260408",
            "ecosystem": "pypi"
          },
          {
            "name": "types-python-dateutil",
            "direct": false,
            "version": "2.8.19.20240106",
            "ecosystem": "pypi"
          },
          {
            "name": "types-requests",
            "direct": false,
            "version": "2.33.0.20260408",
            "ecosystem": "pypi"
          },
          {
            "name": "types-tabulate",
            "direct": false,
            "version": "0.10.0.20260408",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspect",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2026.1",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured",
            "direct": false,
            "version": "0.11.8",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-inference",
            "direct": false,
            "version": "1.6.12",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-ingest",
            "direct": false,
            "version": "1.4.20",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-paddleocr",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-pytesseract",
            "direct": false,
            "version": "0.3.15",
            "ecosystem": "pypi"
          },
          {
            "name": "update-checker",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uri-template",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uritemplate",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "1.26.18",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "uuid-utils",
            "direct": false,
            "version": "0.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "uuid6",
            "direct": false,
            "version": "2025.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "validators",
            "direct": false,
            "version": "0.35.0",
            "ecosystem": "pypi"
          },
          {
            "name": "vertexai",
            "direct": false,
            "version": "1.43.0",
            "ecosystem": "pypi"
          },
          {
            "name": "virtualenv",
            "direct": false,
            "version": "21.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "voyageai",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "pypi"
          },
          {
            "name": "wasabi",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "pypi"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "weasel",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "weaviate-client",
            "direct": false,
            "version": "4.20.4",
            "ecosystem": "pypi"
          },
          {
            "name": "webcolors",
            "direct": false,
            "version": "1.13",
            "ecosystem": "pypi"
          },
          {
            "name": "webencodings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "websocket-client",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "websocket-client",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "widgetsnbextension",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "wikipedia",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "xlrd",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "xlsxwriter",
            "direct": false,
            "version": "3.2.9",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "yarl",
            "direct": false,
            "version": "1.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "yarl",
            "direct": false,
            "version": "1.9.4",
            "ecosystem": "pypi"
          },
          {
            "name": "zeep",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "zipp",
            "direct": false,
            "version": "3.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 587,
        "direct_count": 39,
        "indirect_count": 548
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 91,
        "merged_prs": 2286,
        "open_issues": 185,
        "closed_ratio": 0.853,
        "closed_issues": 1072,
        "closed_unmerged_prs": 650
      },
      "bus_factor": 7,
      "top_contributors": [
        {
          "type": "User",
          "login": "MthwRobinson",
          "commits": 267,
          "avatar_url": "https://avatars.githubusercontent.com/u/1635179?u=0631cb84ca580089198114f94d9c27efe730220e&v=4"
        },
        {
          "type": "User",
          "login": "scanny",
          "commits": 151,
          "avatar_url": "https://avatars.githubusercontent.com/u/2062718?u=fe956d3e8932f182e8c5bf72dc02a9227e767979&v=4"
        },
        {
          "type": "User",
          "login": "cragwolfe",
          "commits": 122,
          "avatar_url": "https://avatars.githubusercontent.com/u/28578599?v=4"
        },
        {
          "type": "User",
          "login": "christinestraub",
          "commits": 120,
          "avatar_url": "https://avatars.githubusercontent.com/u/9475974?u=76fb9f6fefbcf1bbe5c6423379b66fd98c61e78b&v=4"
        },
        {
          "type": "User",
          "login": "rbiseck3",
          "commits": 116,
          "avatar_url": "https://avatars.githubusercontent.com/u/136338424?v=4"
        },
        {
          "type": "User",
          "login": "ryannikolaidis",
          "commits": 96,
          "avatar_url": "https://avatars.githubusercontent.com/u/1208590?u=21e0cd76774b2896a372bbef62f89e48af442cb4&v=4"
        },
        {
          "type": "User",
          "login": "qued",
          "commits": 93,
          "avatar_url": "https://avatars.githubusercontent.com/u/64741807?v=4"
        },
        {
          "type": "User",
          "login": "badGarnet",
          "commits": 90,
          "avatar_url": "https://avatars.githubusercontent.com/u/647930?u=ac33faa556a91c60ee8142af204b5aedb3806a0d&v=4"
        },
        {
          "type": "User",
          "login": "Coniferish",
          "commits": 73,
          "avatar_url": "https://avatars.githubusercontent.com/u/43506685?u=20e4be682f43988bd43b039a801856498e31c764&v=4"
        },
        {
          "type": "Bot",
          "login": "dependabot[bot]",
          "commits": 70,
          "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4"
        }
      ],
      "contributors_sampled": 100,
      "top_contributor_share": 0.146
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build-opencv-wheels.yml",
        "ci.yml",
        "claude.yml",
        "codeflash.yml",
        "codeql-analysis.yml",
        "docker-publish.yml",
        "ingest-test-fixtures-update-pr.yml",
        "partition-benchmark.yaml",
        "release-version-alert.yml",
        "release.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "security_signals": {
      "lockfiles": [
        "uv.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 4,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": null,
            "reason": "internal error: error during json parsing: error during json.Unmarshal: invalid character '<' looking for beginning of value",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 10,
            "reason": "all changesets reviewed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 9 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool is run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "63 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "d309caf8ee20b735eb105d4e16ac3f04e5a48172",
        "ran_at": "2026-07-18T13:35:04Z",
        "aggregate_score": 6.9,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": false,
      "has_dependabot_config": false
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/Unstructured-IO/unstructured",
    "host": "github.com",
    "name": "unstructured",
    "owner": "Unstructured-IO"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 87,
      "inputs": {
        "security": 69,
        "vitality": 95,
        "community": 93,
        "governance": 88,
        "engineering": 86
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 95,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 91,
            "inputs": {
              "commits_last_year": 149,
              "human_commit_share": null,
              "days_since_last_push": 2,
              "active_weeks_last_year": 39
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 2 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 2
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "39/52 weeks with commits",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 39
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "149 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 149
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "0.24.1",
              "releases_from_tags": false,
              "days_since_latest_release": 6,
              "mean_days_between_releases": 7.5
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~7.5 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 7.5
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "no_commit_sample",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 93,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 95,
            "inputs": {
              "forks": 1274,
              "stars": 15156,
              "watchers": 73,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "15,156 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 15156
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "1,274 forks",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 1274
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "73 watchers",
                "points": 10.3,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 73
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "excellent",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "packages": [
                "unstructured"
              ],
              "dependents": null,
              "ecosystems": "pypi",
              "total_downloads": null,
              "monthly_downloads": 5086695
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "5,086,695 downloads/month across pypi",
                "points": 80,
                "status": "met",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 5086695,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "excellent",
        "name": "Sustainability & Governance",
        "value": 88,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "excellent",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "bus_factor": 7,
              "contributors_sampled": 100,
              "top_contributor_share": 0.146
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "7 contributor(s) cover half of all commits",
                "points": 51.3,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 15% of commits",
                "points": 19.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 15
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "100 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 9 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "merged_prs": 2286,
              "open_issues": 185,
              "closed_issues": 1072,
              "issue_closed_ratio": 0.853,
              "closed_unmerged_prs": 650
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "85% of issues closed",
                "points": 39.9,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 85
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "2286/2936 decided PRs merged",
                "points": 29.8,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 2286,
                      "decided": 2936
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "all changesets reviewed",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "followers": 1498,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "Unstructured-IO",
              "public_repos": 45,
              "account_age_days": 1480
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "1,498 followers of Unstructured-IO",
                "points": 22.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1498,
                      "login": "Unstructured-IO"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "45 public repos, account ~4 yr old",
                "points": 20.2,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 45
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 4
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "unstructured"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 6
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 6 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "228 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 228
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 86,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "10 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 16,
                "status": "met",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [
                "deep-learning",
                "document-parsing",
                "machine-learning",
                "nlp",
                "ocr",
                "information-retrieval",
                "data-pipelines",
                "ml",
                "preprocessing",
                "pdf-to-text",
                "natural-language-processing",
                "pdf",
                "pdf-to-json",
                "document-image-analysis",
                "donut",
                "document-image-processing",
                "document-parser",
                "docx",
                "langchain",
                "llm"
              ],
              "has_wiki": true,
              "homepage": "https://www.unstructured.io/",
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://www.unstructured.io/",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "20 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 69,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): CII-Best-Practices, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "cii_best_practices",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 69,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 6.9
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "internal error: error during json parsing: error during json.Unmarshal: invalid character '<' looking for beginning of value",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "all changesets reviewed",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 9 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "22 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is run on all commits",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "63 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 2
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 56,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": "Excluded from scoring (no data or not applicable): Legible commit history. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "legible_commit_history"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": null,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): Demonstrated agent practice, Automated maintenance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "demonstrated_agent_practice",
                    "automated_maintenance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 88,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "uv.lock"
              ],
              "has_dockerfile": true,
              "typed_language": false,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "unstructured/py.typed"
              ],
              "agent_commit_share": null,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": null
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 11,
                "status": "met",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "unstructured/py.typed",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "unstructured/py.typed"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "good",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "primary_language": "HTML",
              "largest_source_bytes": 145235,
              "source_files_sampled": 293,
              "oversized_source_files": 4
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "HTML with type-check config (unstructured/py.typed)",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "typecheck_config_language",
                    "params": {
                      "files": "unstructured/py.typed",
                      "language": "HTML"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "4/293 source files over 60KB",
                "points": 54.2,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 293,
                      "oversized": 4
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-18T13:35:40.508839Z",
  "schema_version": "0.12.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/u/Unstructured-IO/unstructured.svg",
  "full_name": "Unstructured-IO/unstructured",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v1.13.0, schema v0.12.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statisticsPyPI.