Agentic Research Environment (ARE) adalah kerangka kerja riset AI modular berbasis executor–provider pipeline. Ia mendukung eksekusi reasoning otomatis, integrasi LLM multi-platform, dan ekspor hasil ke format DOCX/PDF.
Arsitektur ini dirancang dengan prinsip plug-and-play, artinya setiap komponen (executor, provider, utilitas) dapat diganti atau dikembangkan tanpa mengganggu sistem utama.
agent-researcher/
│
├── core/ # Fondasi sistem
│ ├── logger.py
│ ├── base_executor.py
│ ├── registry.py
│ ├── context.py
│ ├── provider.py
│ ├── pipeline.py
│ ├── config.py
│ └── constants.py
│
├── providers/ # Abstraksi platform LLM
│ ├── openai_provider.py
│ ├── pollination_provider.py
│ ├── lmstudio_provider.py
│ ├── huggingface_provider.py
│ └── mock_provider.py
│
├── executors/ # AI task plugin layer
│ ├── title_generator.py
│ ├── outline_builder.py
│ ├── draft_writer.py
│ ├── exporter.py
│ └── data_prep.py
│
├── pipelines/ # YAML pipeline definition
│ ├── base_research.yaml
│ ├── data_driven_research.yaml
│ ├── literature_review.yaml
│ └── template_based.yaml
│
├── utils/ # Helper dan ekstensi
│ ├── doc_tools.py
│ ├── data_tools.py
│ ├── reference_tools.py
│ ├── visualize_tools.py
│ └── validator.py
│
├── cli.py # Command line interface utama
├── main.py # Entry point program
├── requirements.txt # Dependency list
├── .env # Konfigurasi environment API
└── docs.md # Dokumentasi proyek
git clone https://github.com/lahadiyani/ARE---Framework-DAG-Agent.git
cd agent-researcher
python -m venv venv
source venv/bin/activate # atau di Windows: venv\Scripts\activate
pip install -r requirements.txtEdit file .env:
OPENAI_API_KEY=your_openai_api_key
POLLINATIONS_API_KEY=your_pollinations_token
HUGGINGFACE_API_KEY=your_huggingface_token
LMSTUDIO_BASE_URL=http://localhost:1234
python main.py run --executor title_generator --input "AI dalam pendidikan"python main.py run --pipeline base_research.yaml --provider pollinationspython main.py --list-executorsname: Base Research Flow
description: Pipeline dasar untuk riset AI
steps:
- executor: title_generator
- executor: outline_builder
- executor: draft_writer
- executor: exporterSetiap lapisan bersifat independen. Jika kamu menambah executor baru:
- Tambahkan file di
executors/(misalsummary_builder.py) - Daftarkan di
core/registry.py,core/base_executor.pydan jika kamu membutuhkan logger maka panggilcore/logger.pykemudian gunakan beberapa class dan fungsi tertentu sepertiBaseExecutorsebagai kontrak semua executor, danexecutor_registrysebagai Sistem plugin untuk executor, jugaget_loggersebagai cara untuk melihat error atau informasu alur atau lihat contoh executor file yang ada - Tambahkan ke YAML pipeline atau lihat dokumentasi pipeline.md
- Jalankan pipeline baru
- jika ada kekurangan anda bisa berkontribusi dengan cara fork repository ini
Setiap provider harus mengimplementasikan minimal:
class BaseProvider:
async def text2text(self, prompt: str, **kwargs) -> str:
raise NotImplementedErrorProvider yang tersedia:
openai_provider.pypollination_provider.pyhuggingface_provider.pylmstudio_provider.pymock_provider.py
Semua executor mengikuti kontrak BaseExecutor:
class BaseExecutor(ABC):
name: str
async def run(self, context):
raise NotImplementedErrorContoh:
class TitleGenerator(BaseExecutor):
async def run(self, ctx):
topic = ctx.get("topic", "Artificial Intelligence")
prompt = f"Buatkan 5 judul penelitian tentang {topic}."
return await ctx.llm.text2text(prompt)| Lapisan | Fokus | Dapat Dikembangkan |
|---|---|---|
| Core | Pipeline dan context | Tambah event bus, cache, DAG executor |
| Providers | Koneksi LLM | Tambah backend (Anthropic, Ollama, dll) |
| Executors | Logic AI | Tambah task baru (summary, classification, dsb) |
| Utils | Tools bantu | Tambah fungsi visualisasi dan validasi |
| Pipelines | YAML Flow | Kombinasi executor baru |
Gunakan mode mock provider untuk pengujian tanpa API call:
python main.py run --pipeline base_research.yaml --provider mockLogger disediakan via core/logger.py menggunakan loguru, dan dapat dikustomisasi untuk level info/debug/error.
- Integrasi Event Bus (Human-in-the-loop)
- Tambah Web UI untuk monitoring pipeline
- Support parallel DAG executor
- Integration ke Notion/Obsidian
- Auto citation dari CrossRef
Pull request disambut terbuka!
- Buat branch sesuai fitur:
feature/provider-ollama - Gunakan commit convention:
feat,fix,refactor,docs - Jalankan test sebelum push
MIT License © 2025 — Agentic Research Environment