AI Model Intelligence
Pricing
from $0.50 / 1,000 model results
AI Model Intelligence
Discover and normalize AI model metadata from Hugging Face, GitHub, Ollama, and OpenRouter in one structured dataset. Track models, providers, capabilities, licenses, popularity, and availability.
Pricing
from $0.50 / 1,000 model results
Rating
0.0
(0)
Developer
Hakashi Katake
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
An Apify Actor that collects public AI/ML model metadata from verified official APIs and emits one normalized record per model.
What it does
The Actor supports two modes:
- Specific lookup with
models, such asmeta-llama/Llama-3.1-8B-Instructorowner/repository. - Discovery with
query, or a source-specific default discovery when bothmodelsandqueryare empty.
It queries only documented APIs, merges equivalent records deterministically, preserves source attribution, and continues when one source fails.
Supported sources
| Source | Official API used | Authentication | Notes |
|---|---|---|---|
| Hugging Face | GET https://huggingface.co/api/models and model detail | Optional HF_TOKEN | Public metadata and current aggregate downloads/likes |
| GitHub | GET /search/repositories and GET /repos/{owner}/{repo} | Optional GITHUB_TOKEN | Repository relevance is a best-effort model signal |
| Ollama | GET {OLLAMA_BASE_URL}/tags | Local server: none; cloud: OLLAMA_API_KEY | Reports models available to one configured Ollama server; no HTML library scraping |
| OpenRouter | GET https://openrouter.ai/api/v1/models | Optional OPENROUTER_API_KEY | Catalog metadata, context length, modalities, and pricing |
The complete verification record, including rate limits, restrictions, response fields, and source URLs, is in docs/API_RESEARCH.md.
Input
{"query": "qwen","models": [],"sources": ["huggingface", "github", "ollama", "openrouter"],"maxItems": 100,"includeMomentum": true,"snapshotStoreName": "ai-model-intelligence-snapshots","timeoutMs": 15000,"maxRetries": 2}
models takes precedence over query for source-specific lookup. sources defaults to all four sources. Use a persistent named snapshotStoreName for momentum across scheduled runs; without it, snapshots are run-local.
Output
The default Dataset contains one record per normalized model:
{"modelId": "qwen/qwen2.5-7b-instruct","name": "Qwen2.5-7B-Instruct","provider": "qwen","description": null,"architecture": null,"parameterCount": null,"contextLength": 32768,"modalities": ["text"],"license": null,"releaseDate": "2024-09-18T00:00:00.000Z","lastUpdated": null,"huggingFace": {"url": "https://huggingface.co/Qwen/Qwen2.5-7B-Instruct","downloads": 0,"likes": 0,"tags": [],"library": "transformers"},"github": {"url": null,"stars": null,"forks": null,"openIssues": null,"contributors": null},"ollama": {"url": null,"available": null,"pulls": null},"openRouter": {"url": null,"available": true,"inputPrice": "0.0000004","outputPrice": "0.0000004","contextLength": 32768},"providers": ["qwen"],"momentum": {"starsGrowth": null,"forkGrowth": null,"downloadGrowth": null,"momentumScore": null},"sources": [],"errors": [],"observedAt": "2026-09-27T00:00:00.000Z"}
The example values are illustrative; unavailable values are emitted as null, not inferred.
Momentum and snapshots
Each run can save the current GitHub stars/forks and Hugging Face downloads in the MODEL_SNAPSHOTS Key-Value Store record. On later runs, the Actor calculates percentage growth and a bounded average score from values that existed in both snapshots. No historical data is claimed when the source does not provide it.
For scheduled runs, create or reuse a named Apify Key-Value Store and pass its name as snapshotStoreName.
Error handling
Every source has a bounded timeout and retry policy. 408, 425, 429, and common 5xx responses are retried with backoff; Retry-After is honored when present. Source failures are recorded in the run OUTPUT summary and, when relevant, on model records under errors. A failed source does not discard successful results from other sources.
An unavailable local Ollama server is expected in a hosted run unless OLLAMA_BASE_URL points at a reachable server; this is reported as an Ollama error.
Credentials and environment
Set only the credentials needed for the sources you enable:
export HF_TOKEN="..."export GITHUB_TOKEN="..."export OLLAMA_BASE_URL="https://ollama.com/api"export OLLAMA_API_KEY="..."export OPENROUTER_API_KEY="..."
Credentials are read from environment variables and are not included in Dataset records.
Local development
Requirements: Node.js 20+ and npm.
npm installnpm run typechecknpm testnpm run build
To run the Actor locally with the Apify CLI, place input in storage/key_value_stores/default/INPUT.json and run apify run. Local Dataset and Key-Value Store data remains under storage/.
The verified live API smoke tests are opt-in so ordinary unit tests do not consume external quotas:
$RUN_INTEGRATION=1 npm run test:integration
Limitations and pricing considerations
- GitHub search is not a model registry; search results are relevance-based repository candidates.
- Ollama
/api/tagsis server-local/cloud-account inventory, not a global public model catalog. Pull counts are unavailable from the documented response. - Hugging Face download and like values are current aggregates. Growth needs at least two runs with a persistent snapshot store.
- Provider pricing is populated only from OpenRouter’s catalog response. The Actor does not make inference requests and does not incur token charges.
- Public API quotas and plan pricing are controlled by each provider and can change. Consult the official links in
docs/API_RESEARCH.mdbefore large scheduled crawls.