This repository is a full-stack application for building knowledge graphs from unstructured data using Large Language Models (LLMs). The backend, built with FastAPI and LangChain, ingests documents from multiple sources (local files, web pages, YouTube, Wikipedia, S3, GCS), chunks them, and uses an LLM to extract entities and relationships, which are stored in a Neo4j graph database. The frontend, a React/TypeScript application, provides a user interface for uploading files, configuring extraction (schema, LLM model, chunking), visualizing the resulting graph, and interacting with the data through a retrieval-augmented generation (RAG) chatbot with multiple retrieval modes (vector, graph, fulltext, hybrid). The system includes post-processing features like community detection, deduplication, and orphan node cleanup, as well as token usage tracking and evaluation metrics (RAGAS). While primarily an application with a web UI, it also contains experimental notebooks (GraphRAG, chunk size evaluation) that serve a data research purpose, making it a hybrid codebase with a dominant application character.
Magic is a large, polyglot enterprise AI-agent and collaboration platform. The production core is a PHP Hyperf backend (`backend/magic-service`) with strict DDD layering, a Python agent runtime (`backend/super-magic`) for tools/skills/browser automation, a Go engine for knowledge processing/embedding, and a React/TypeScript frontend (`frontend/magic-web`) that spans desktop, mobile, admin, and a visual flow editor. The platform delivers chat/messaging, AI agents, workflow automation (MagicFlow), knowledge bases with vector search, an LLM/model gateway, file storage, low-code data tables (MagicBase), MCP integration, and multi-channel bot deployment (DingTalk, Feishu, WeCom). It is fundamentally an application rather than a research repository; the knowledge-base and data-processing subsystems serve product features, not analysis. Architecturally, the strongest parts are the PHP library packages — async-event, cloudfile, flow-expr-engine, code-executor, and easy-dingtalk — which are cleanly separated and demonstrate genuine, extractable craftsmanship. The frontend likewise includes reusable packages for flow editing, HTML-to-PPTX conversion, and UI components. However, the repository is physically enormous and shows maintenance risk: substantial code duplication exists between `backend/magic-service` and `backend/super-magic-module`, several enterprise features are intentionally stubbed out with open-source no-ops, migration rollback methods are frequently empty, and the mix of PHP, Python, Go, and TypeScript adds integration complexity. The codebase is actively developed, but quality is uneven across the many modules.
LoLLMs (Lord of Large Language Multimodal Systems) is a local, single-user web application for interacting with large language models. It provides a FastAPI + Socket.IO backend with a Vue.js frontend, supporting multiple model backends (bindings) such as llama.cpp, OpenAI, Anthropic, and Ollama. The system features a plugin architecture with 'personalities' (scripted AI agents), function calling, RAG capabilities, and services for text-to-image, text-to-speech, and text-to-video. It is designed for extensibility through zoos of bindings, personalities, services, and functions. While primarily an application, it includes some data/research elements like model scrapers and training scripts, but these are secondary to the core chat interface.
pymupdf4llm is a library and CLI tool that converts PDFs (and other documents) into clean Markdown, JSON, plain text, or layout-aware chunks specifically optimized for LLM and RAG workflows. It provides a high-level API (`to_markdown`, `to_json`, `to_text`, `to_chunks`) that internally uses either a legacy heuristic approach or an optional GNN-based layout parser (via `pymupdf-layout`) to extract text, tables, images, and reading order. The repository also includes a deterministic chunking pipeline that uses only PDF-native layout signals (box boundaries, font jumps, vertical gaps) to produce context-preserving chunks without embeddings. OCR support is built-in, with a hybrid decision model (ONNX-based) that selectively applies Tesseract, RapidOCR, or PaddleOCR to pages that need it. Framework integrations for LlamaIndex and LangChain are provided. The architecture is primarily a monolithic library with two parallel conversion paths (legacy and layout-based), a chunking subpackage, an OCR subsystem with abstract backends, and a batch converter for large-scale processing. While the code is generally well-structured, the presence of two parallel conversion paths and tight coupling to PyMuPDF internals introduce some maintenance risk.
Promptomatix is a framework for automating and optimizing large language model (LLM) prompts through iterative refinement. It provides both CLI and API interfaces for users to input task descriptions, generate synthetic data, optimize prompts using DSPy or meta-prompt backends, and evaluate results with custom metrics. The system features modular architecture separating language model management, configuration, session tracking, feedback handling, and metrics evaluation. Key workflows include prompt optimization with feedback incorporation, batch processing capabilities, and extensibility for custom metrics and optimization backends. The framework targets researchers and developers seeking to reduce manual prompt engineering effort while improving LLM output consistency and quality.
Stagehand is a Python SDK for the Stagehand API, an AI-driven browser automation framework. The SDK provides sync and async clients (`Stagehand`, `AsyncStagehand`) that interact with remote or local browser sessions via natural language commands like `observe`, `act`, `extract`, and `execute`. It supports both cloud-based (via REST API) and local execution modes, the latter using a compiled SEA binary managed by `SeaServerManager`. The codebase is primarily auto-generated by Stainless from an OpenAPI spec, with hand-written custom modules for session binding, binary management, and local server orchestration. The architecture follows a resource-based client pattern: the main client holds resource objects (e.g., `sessions`) that expose typed methods returning Pydantic models. Request parameters are defined as `TypedDict` subclasses with camelCase aliases, and responses are deserialized into strongly-typed models. The SDK includes comprehensive error handling (hierarchy of `APIError` subclasses), configurable retries and timeouts, SSE streaming support, and Pydantic v1/v2 compatibility. External dependencies include `httpx` for HTTP, `pydantic` for models, and optional `aiohttp`, `playwright`, or `pydoll` for advanced browser control. Key entry points are the `Stagehand` and `AsyncStagehand` classes, which can be instantiated with an API key and base URL. Sessions are started via `client.sessions.start()`, then methods like `session.act()`, `session.extract()`, `session.observe()`, and `session.execute()` perform browser automation tasks. The `_custom/session.py` module wraps the generated resource to provide a bound session object with page-aware frame handling. The SDK also ships a `_sea` binary for local execution, packaged via custom Hatch build hooks.
Talkio is a local-first desktop (Windows/macOS/Linux via Tauri 2) and Android application for multi-AI group chat. Unlike a conventional ChatGPT wrapper, it orchestrates conversations where multiple AI models — OpenAI Chat Completions, OpenAI Responses, Anthropic Messages, plus DeepSeek/Groq/Ollama via compatible endpoints — converse together in one thread, each bound to a configurable persona/identity with its own system prompt and model selection. Core features include streaming SSE generation, an MCP (Model Context Protocol) client with both stdio subprocess (desktop) and custom streamable-HTTP transports, a tool-call loop supporting iterative tool execution, automatic conversation context compression, chat branching/regeneration, file attachment parsing (PDF/Word/Excel/images), and export to Markdown/PDF. All data is local: conversations persist in SQLite via the Tauri SQL plugin, while providers, identities, MCP servers, and settings live in localStorage.
This is a monorepo of 80+ Haystack integrations maintained by deepset, extending the Haystack framework with production-ready components for RAG, search, and agent pipelines. Each integration is a Python package wrapping an external service (AWS, OpenAI, Cohere, Jina, Brave, MongoDB, Qdrant, Azure, etc.) or providing specialized NLP/agent functionality. The code is library code, not research code — every component follows the Haystack component contract: @component decorator, default_to_dict/from_dict serialization, lazy warm_up, run/run_async, close_async, and Secret-based authentication. The dominant architecture is a collection of thin-to-medium wrappers unified by Haystack's pipeline abstractions, with consistent FilterPolicy (REPLACE/MERGE) document filtering and output type declarations across all integrations.
This repository is a TypeScript monorepo for an AI-powered autonomous web browsing agent called 'open-browser'. It consists of three packages: core library (open-browser), CLI (@open-browser/cli), and sandbox (@open-browser/sandbox). The core library orchestrates an agent loop that uses Playwright to control a Chromium browser, extracts DOM state via CDP, sends it to an LLM (OpenAI, Anthropic, Google) which decides actions in structured JSON, and executes those actions via a CommandExecutor. The system supports vision screenshots, extended thinking, compact mode, planning, evaluation, replay recording, and MCP server integration. The CLI provides commands for running agents, interactive sessions, and direct browser manipulation. The sandbox provides resource-limited execution. Key entry points include the Agent class, Viewport browser session, CommandExecutor, and BridgeServer. External dependencies include Playwright, Vercel AI SDK, Zod, Turndown, and various LLM provider SDKs. The architecture follows a modular monorepo with clear separation of concerns, event-driven communication via EventHub, and a guard/watchdog pattern for browser lifecycle management. The codebase demonstrates strong engineering practices with extensive use of Zod schemas for structured outputs, a command catalog pattern, and comprehensive telemetry and cost tracking.
This repository is a comprehensive, curated list of anomaly detection (outlier detection) resources, maintained by the author of the PyOD library. It aggregates books, academic papers, tutorials, open-source toolkits, datasets, and relevant conferences/journals, covering tabular, time-series, graph, and text data modalities. The repository also includes two utility scripts: a downloader for paper PDFs and a robust URL checker for verifying links in the documentation. While the core value is the curated resource list itself, the utility scripts demonstrate clean engineering practices and are reusable for similar link-checking and batch download tasks. This is not a software application or data pipeline; it is a reference catalog for researchers and practitioners.
MCPM (Model Context Protocol Manager) is a production-grade CLI tool for managing Model Context Protocol (MCP) servers. It provides a centralized server registry, global configuration, virtual profile system (tags), multi-client integration (Claude Desktop, Cursor, Windsurf, VSCode, Cline, Goose, and 10+ more), direct server execution via stdio/HTTP/SSE, secure public sharing via tunnels, and usage monitoring/analytics. The tool is designed for both interactive use and AI-agent automation (non-interactive mode with environment variables). The repository also contains a curated registry of 400+ MCP server definitions (JSON manifests) with metadata and installation instructions. While primarily a Python CLI application, the registry component adds a hybrid data/configuration dimension. The architecture follows a monolith command pattern with modular command implementations, client adapters using base class inheritance, and optional FastMCP proxy for server aggregation.
Cali is a TypeScript-based CLI application designed for React Native and Expo development teams. It functions as an AI-powered orchestration layer that automates mobile quality assurance, code review, and performance analysis. The system operates by ingesting repository context (PR data, mobile artifacts) and executing structured agent loops that interact with platform-specific tools (Android/iOS SDKs) via the Vercel AI SDK. It supports both local execution and CI environments (GitHub Actions, EAS), generating structured reports in JSON and Markdown formats. Architecturally, it follows a monorepo pattern with distinct packages for the core CLI (packages/cali) and platform-specific tool wrappers (packages/tools). The core logic relies on a role-based command structure where specific tasks (QA, Review, Dev) are delegated to specialized agent roles. Data flow is deterministic, moving from context resolution through tool execution to report publishing, ensuring consistent behavior across different environments. The tool distinguishes itself by managing complex mobile development contexts, such as artifact parsing (APK/IPA) and device management, which are typically brittle in automated workflows. It integrates skill discovery for AI agents and supports multiple output publishers (local file, Vercel Blob). While it solves a specific niche problem effectively, it introduces dependencies on external binaries and rapid-versioning AI SDKs that require careful maintenance.
CtxPort is a browser extension and companion documentation website that lets users copy AI conversations (from ChatGPT, Claude, Gemini, DeepSeek, Grok, Doubao, GitHub) as structured Markdown Context Bundles. It solves 'context rot' by enabling portable, lossless migration of conversations between AI tools without uploading data to third parties. The architecture is a modern monorepo using pnpm workspaces and Turborepo, with separate packages for schema validation (Zod), markdown serialization, plugin-based extraction, and shared UI components. The browser extension (Manifest V3, WXT, React 19, Tailwind CSS 4) injects copy buttons and sidebar list icons into supported platforms, while the documentation website (Next.js + Nextra) provides multilingual (en/zh) user guides and feature descriptions. All processing is client-side; no data is uploaded. The codebase demonstrates strong engineering practices including a plugin system for extensibility, a strategy pattern for content flatteners, clean separation of concerns, and comprehensive CI/CD pipelines. Some fragility exists in DOM selectors and platform APIs, but the architecture is well-structured for adaptation.
This repository provides a Python library for converting web pages into text optimized for Large Language Model (LLM) input. It fetches HTML content using Playwright (headless browser) and processes it to extract meaningful text while preserving structural information like tables, links, and images in a text format. The core processing logic converts HTML tables to markdown, handles image and link preservation (or removal), and strips unnecessary tags (script, style) to reduce noise. The library is designed as a preprocessing step before feeding web content to LLMs for tasks such as data extraction or summarization. It includes three main modules: HTML fetching, HTML processing, and a combined convenience function.
This repository is a comprehensive, educational collection of 42+ Jupyter notebooks and runnable scripts demonstrating a wide array of Retrieval-Augmented Generation (RAG) techniques. It is primarily a data_research and educational resource, not a deployable application or library. The codebase serves as a practical cookbook for engineers and researchers, covering the full RAG stack from basic chunking and retrieval (e.g., simple RAG, BM25) to advanced methods like GraphRAG, Self-RAG, HyDE, RAPTOR, and agentic RAG. It also includes a dedicated evaluation framework with notebooks and reusable scripts for measuring faithfulness, relevance, and correctness using tools like DeepEval and custom LLM judges. The architecture is modular, with a shared helper_functions.py providing common utilities for PDF loading, embedding, and retrieval, and an evaluation/ module offering reusable evaluation pipelines. The runnable scripts in all_rag_techniques_runnable_scripts/ provide cleaner, class-based implementations of the techniques that are more suitable for integration into other projects than the notebooks themselves. While the code is well-structured for an educational project and demonstrates high craftsmanship in its reusable components, it is not designed for production deployment. Reproducibility is limited by the lack of a pinned dependency file and reliance on external API keys. The repository is actively maintained and highly influential (29k+ stars), making it a valuable reference for anyone building or evaluating RAG systems.
The QwenLM/Qwen3 repository provides resources for the Qwen3 family of large language models, including model cards, documentation, and usage examples. It serves as an application-focused hub for inference, deployment, training, and evaluation of Qwen3 models. The repository contains extensive multilingual documentation, inference demos (web and CLI), deployment guides for various frameworks (vLLM, SGLang, etc.), training examples (using Axolotl, LLaMA-Factory, etc.), quantization techniques, and evaluation harnesses (notably for ARC-AGI). While the core model weights are hosted externally, this repo enables end-to-end usage through well-organized examples and scripts.
GitMCP is a remote Model Context Protocol (MCP) server running on Cloudflare Workers that turns any public GitHub repository (or GitHub Pages site) into live, searchable documentation for AI tools. AI clients like Claude Desktop, Cursor, and MCP Inspector connect to gitmcp.io/{owner}/{repo} over SSE with OAuth and receive repo-specific MCP tools: fetch_<repo>_documentation, search_<repo>_documentation, search_<repo>_code, and fetch_url_content. The ingestion pipeline fetches llms.txt first (falling back to README.md, then landing-page HTML converted via html-to-md), chunks it with markdown-aware chunkers (heading-context-preserving, code-block and list aware), and indexes it into Cloudflare Vectorize using a dependency-free deterministic embedder built from hashing plus term-frequency/keyword extraction, with a hybrid ranking that blends normalized vector similarity (60%) with keyword/proximity/heading heuristics (40%). Robots.txt is parsed, cached, and respected before external fetches - an uncommon discipline for doc scrapers. The codebase also ships a full web chat application (React Router v7, Tailwind, shadcn/ui, AI SDK) with model selection across OpenAI/Anthropic/Groq/XAI, MCP server management, and a streaming chat API endpoint. Architecturally, the MCP server itself is implemented as a Cloudflare Durable Object (MyMCP), with KV caching (TTL with jitter to prevent cache stampedes), R2 storage for pre-generated docs, a queue for background ingestion, Vectorize for semantic search, Analytics Engine for usage metrics, and GitHub API integration with rate-limit tracking and retry/backoff. A notable design pattern is the RepoHandler strategy interface: per-repo families (three.js, react-router) provide customized tool sets, doc-fetch strategies, and search behavior while the generic handler covers all other repos, including a static mapping of library names to their canonical doc repos. Testing is solid: Vitest unit tests cover tool registration, repo handlers, URL parsing, caching, and three.js utilities (with snapshots), and Playwright e2e tests run against a locally-provisioned R2 environment; CI runs both on push/PR. Weaknesses and drift: the embedding layer is explicitly a prototype-grade stand-in ('In a production environment, you would use a proper embedding service like OpenAI') and will produce weak semantic results; badge.ts contains ~96k tokens of hardcoded escaped SVG logo paths (extreme maintenance fragility); several hardcoded host URLs (git-mcp.idosalomon.workers.dev, CHAT_API_URL) baked into source; a generated-type mismatch where Vectorize metadata filters use $gt at runtime but generated types only declare $eq/$ne; vector re-ingestion only deletes the first 100 stale chunks (repos with more chunks accumulate orphans); and the frontend uses React Router v7's unstable_viteEnvironmentApi. These are prototype-velocity marks rather than architectural rot - the core strategy/caching/testing structure is genuinely well-built.
JiuwenSwarm is a multi-agent AI orchestration platform that runs as a set of distributed services: an AgentServer (WebSocket-based), a Gateway for multi-channel IM integration, a sandboxed execution environment (JiuwenBox), and a skill development pipeline. It enables teams of AI agents (leader/teammates) to collaborate on complex tasks, with skill retrieval and orchestration via the Symphony system. The system supports multiple frontends: web (React), TUI (terminal), and IM channels (Feishu, WeCom, DingTalk, Telegram, Discord, Slack, WeChat, Xiaoyi). The architecture is modular with an extension system, but many components are tightly coupled and some parts remain incomplete (e.g., SkillDev stages marked as '待实现'). The codebase is actively maintained but shows signs of drift: multiple monkeypatches, hardcoded paths, and a large dependency surface. The core strength lies in its agent orchestration logic, sandbox security, and multi-channel integration, while the skill evaluation and retrieval subsystems are functional but not yet production-ready across all stages.
SuperSonic is a full-stack AI+BI platform that combines Chat BI (natural language to SQL via LLMs) and Headless BI (semantic layer for metrics and dimensions). The backend is a modular Java Spring Boot application with modules for chat, headless query, authentication, and common utilities. It supports multiple databases (MySQL, PostgreSQL, ClickHouse, etc.) and integrates with various LLM providers (OpenAI, Ollama, Dify) and embedding stores (Milvus, Chroma, PGVector, InMemory). The frontend is a React application built with UmiJS and Ant Design, providing a semantic model editor, agent configuration, plugin management, and an embeddable chat SDK. The core NL2SQL pipeline involves schema mapping (rule-based and embedding-based), semantic parsing (rule and LLM), SQL correction (chain of correctors), translation to physical SQL, and execution. The system also includes chat memory for few-shot learning, plugin recognition, and post-query recommendations. While primarily an application, it contains data research elements such as evaluation scripts (benchmark.py, evaluation.py) and custom HanLP dictionaries for domain-specific entity recognition. The architecture is extensible via SPI-based component factories for parsers, correctors, mappers, and DB adaptors. The codebase is well-structured but shows signs of complexity with many modules, some commented-out code, hardcoded configurations, and a dependency on external LLM services that may introduce drift.
SDPO (Self-Distilled Policy Optimization) is a framework for training large language models using reinforcement learning algorithms, built upon the verl (Volcano Engine Reinforcement Learning) foundation. The system provides a modular architecture for implementing PPO, GRPO, SDPO, and other RL algorithms with distributed training capabilities via Ray. It integrates with inference engines like vLLM and SGLang, supports multiple model architectures (Llama, Qwen with Megatron optimization), and includes reward modeling for domains like mathematics and coding. The framework features extensible components for reward managers, tools, and agent interactions, with experimental capabilities for fully asynchronous training and multi-turn reasoning. While actively maintained, the system's complexity and extensive dependency ecosystem present moderate technical drift risks.