Skip to content

Heinrich The Inventing Machine

An open-source AI system for TRIZ-based inventive problem solving with interpretable, step-by-step reasoning flow

Install: git clone https://github.com/NickScherbakov/Heinrich-The-Inventing-Machine

Install

$git clone https://github.com/NickScherbakov/Heinrich-The-Inventing-Machine

Install command taken from the project's README or registry entry. Always review code before running it.

Heinrich: The Inventing Machine

An open-source AI system for TRIZ-based inventive problem solving with interpretable, step-by-step reasoning flow

🌍 Languages: English | 中文 | Русский | العربية

Overview

Heinrich is an open-source AI engine that combines classical TRIZ (Theory of Inventive Problem Solving) methodology with modern Large Language Models to provide systematic, interpretable inventive problem-solving capabilities. Named after Genrich Altshuller, the creator of TRIZ, Heinrich embodies the systematic thinking approach of the original methodology while leveraging contemporary AI advances.

Key Features

  • Systematic TRIZ Pipeline: 7-module workflow following classical TRIZ methodology
  • Interpretable Reasoning: Every step is logged and traceable to TRIZ principles
  • Knowledge Base: Complete 39 parameters, 40 principles, contradiction matrix
  • Multi-LLM Support: Google Gemini, Ollama (local), and more coming soon
  • Multi-modal Support: Text problems, technical specifications, patent analysis
  • Evaluation Suite: Curated case base with reference solutions
  • Multilingual: Full documentation in English, Chinese, Russian, and Arabic
  • Ethical AI: Transparent persona with safety guidelines

Getting Started

Installation

Prerequisites

  • Python 3.8 or higher
  • pip (Python package manager)

Install from source

  1. Clone the repository:
git clone https://github.com/NickScherbakov/Heinrich-The-Inventing-Machine.git
cd Heinrich-The-Inventing-Machine
  1. Install dependencies:
pip install -r requirements.txt
  1. Install Heinrich in development mode:
pip install -e .

Dependencies

Heinrich requires the following Python packages:

  • PyYAML>=6.0 - For TRIZ knowledge base (YAML files)
  • numpy>=1.21.0 - For numerical computations
  • dataclasses-json>=0.5.0 - For data serialization
  • google-generativeai>=0.3.0 - For Google Gemini LLM integration
  • requests>=2.31.0 - For HTTP requests (Ollama)

All dependencies are automatically installed when using pip install.

LLM Providers

Heinrich supports multiple LLM backends:

Provider Setup Best For
Google Gemini API key from AI Studio Production, cloud deployment
Ollama Local installation from ollama.ai Local development, privacy
Vertex AI GCP project with Vertex AI enabled Enterprise, GCP integration

Using Google Gemini (Recommended)

from heinrich.llm.adapters import GeminiAdapter

adapter = GeminiAdapter({
    "api_key": "your-gemini-api-key",
    "model": "gemini-1.5-pro",
    "temperature": 0.7,
})

response = adapter.generate("Analyze this TRIZ problem...")

See examples/gemini_usage.py for a complete example.

Usage

Quick Example

Here's a simple example to get started with Heinrich:

from problem_parser import ProblemParser

# Create a problem parser
parser = ProblemParser()

# Analyze a problem
problem = "We need to make a car faster, but increasing engine power makes it consume more fuel."
result = parser.parse(problem)

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

Explore related