Deep Web Research Tool - Auto-classifies topics, prioritizes relevant sources, generates 300+ word AI conclusions
Project description
ACHEM - Deep Web Research Tool
ACHEM (Arabic: آشم) is an intelligent research tool that automatically classifies your query, finds relevant specialized sources, and generates comprehensive 300+ word AI conclusions.
Features
Smart Topic Classification
Automatically detects your query type and prioritizes relevant sources:
| Topic | Priority Sites |
|---|---|
| Anime & Manga | MyAnimeList, Crunchyroll, Anime News Network |
| Football/Soccer | The Analyst, ESPN, Sky Sports, Goal.com |
| MMA/Fighting | Tapology, Sherdog, MMA Junkie |
| Gaming | IGN, GameSpot, Metacritic, Steam |
| Movies/TV | IMDb, Rotten Tomatoes, Metacritic |
| Health/Medicine | Mayo Clinic, WebMD, WHO |
| Science | Scientific American, Nature, NASA |
| Technology | Stack Overflow, GitHub, TechCrunch |
| History | Britannica, History.com |
Comprehensive Research
- 100+ Sources: Searches DuckDuckGo with topic-prioritized results
- Full Content Extraction: Scrapes complete articles from specialized sites
- Smart Filtering: Removes ads/boilerplate, keeps relevant content
- 300+ Word Conclusions: Detailed AI-generated analysis
How Results Are Sorted
Results are sorted by relevance:
- Most relevant sources for your topic first
- Specialized sites for your query type
- General sources last
Installation
git clone https://github.com/sarok-exe/achem.git
cd achem
uv venv .venv && source .venv/bin/activate
uv pip install -e .
API Configuration
Create ~/.ACHEM/api.env:
OPENROUTER_API_KEY=your_openrouter_key_here
OPENROUTER_MODEL=google/gemma-4-31b-it:free
Get API key: https://openrouter.ai/settings
Usage
achem "What are the health risks of smoking?" --ddg-limit 50
achem "Who will win Bayern vs Real Madrid?" --ddg-limit 100
achem "Latest One Piece chapter summary" --ddg-limit 50
Options
--ddg-limit N Number of sources (default: 100)
--mode ai AI conclusions (default)
--mode local Local TF-IDF (no API)
--lang en/fr/ar Response language
How It Works
┌──────────────────────────────────────────────────────┐
│ 1. CLASSIFY │
│ Detects topic: anime, football, health, etc. │
│ Identifies priority sites for your topic │
├──────────────────────────────────────────────────────┤
│ 2. SEARCH (100+ sources) │
│ Prioritizes specialized sites │
│ Sorts by topic relevance │
├──────────────────────────────────────────────────────┤
│ 3. SCRAPE │
│ Extracts full article text │
│ Removes ads and boilerplate │
├──────────────────────────────────────────────────────┤
│ 4. ANALYZE & CONCLUDE │
│ Generates 300+ word comprehensive analysis │
│ Synthesizes all sources into detailed paragraphs │
└──────────────────────────────────────────────────────┘
Output
Reports saved to ~/Documents/ACHEM/:
- AI Conclusion: 300+ word detailed analysis
- All Articles: Full extracted content
- Topic Classification: Shows detected category
License
MIT License
Acknowledgments
- OpenRouter - Free AI models
- DuckDuckGo - Web search
- Trafilatura - Content extraction
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file achem-1.2.0.tar.gz.
File metadata
- Download URL: achem-1.2.0.tar.gz
- Upload date:
- Size: 52.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f33b092c2fe93d9dedc378dc5a47d3a0d79fac390ecbebb2c13f69e96a02382
|
|
| MD5 |
ad266788e796195f2b008071406d9dd2
|
|
| BLAKE2b-256 |
57291b1c5d7b4f0064f4a2171f8ec4c42cd9b7aace271bd3bc1b143331cadc86
|
Provenance
The following attestation bundles were made for achem-1.2.0.tar.gz:
Publisher:
release.yml on sarok-exe/achem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
achem-1.2.0.tar.gz -
Subject digest:
9f33b092c2fe93d9dedc378dc5a47d3a0d79fac390ecbebb2c13f69e96a02382 - Sigstore transparency entry: 1294321857
- Sigstore integration time:
-
Permalink:
sarok-exe/achem@c7838b69720fd4bba1dd201c188bd9c17847b887 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/sarok-exe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c7838b69720fd4bba1dd201c188bd9c17847b887 -
Trigger Event:
push
-
Statement type:
File details
Details for the file achem-1.2.0-py3-none-any.whl.
File metadata
- Download URL: achem-1.2.0-py3-none-any.whl
- Upload date:
- Size: 62.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5969a6865cb70757fcff84c780a76957722bb3a85b39497b44536490b24257d5
|
|
| MD5 |
eb7b7e9b16f5145c63f0cc70c56b2e11
|
|
| BLAKE2b-256 |
6661b307d78c5c209245132d99a7f442f046c5aedd09c6ccecf2309d0d4dfcef
|
Provenance
The following attestation bundles were made for achem-1.2.0-py3-none-any.whl:
Publisher:
release.yml on sarok-exe/achem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
achem-1.2.0-py3-none-any.whl -
Subject digest:
5969a6865cb70757fcff84c780a76957722bb3a85b39497b44536490b24257d5 - Sigstore transparency entry: 1294321901
- Sigstore integration time:
-
Permalink:
sarok-exe/achem@c7838b69720fd4bba1dd201c188bd9c17847b887 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/sarok-exe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c7838b69720fd4bba1dd201c188bd9c17847b887 -
Trigger Event:
push
-
Statement type: