XR

xiaoconstantine/rlm-go

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

21 stars Качество 54 Тренд 14MIT

Реализация рекурсивных языковых моделей (RLM) - масштабирование во времени вывода для произвольно длинных контекстов

Обзор

Реализация рекурсивных языковых моделей (RLM) - стратегия масштабирования во времени вывода, которая позволяет LLM обрабатывать произвольно длинные контексты, рассматривая подсказки как внешние объекты, которые могут быть программно изучены и рекурсивно обработаны. RLM-go предоставляет среду Go REPL, в которой LLM-генерированный код может: - Контекст доступа, сохраненный как переменная - Делать рекурсивные вызовы sub-LLM через Query() и QueryBatched() - Используйте стандартные операции Go для обработки текста - Завершение сигнала с FINAL() или FINAL VAR() В отличие от Python RLM, который использует Socket IPC, rlm-go использует Yaegi - интерпретатор Go. Это исключает: - Накладные расходы на Socket-сервер - Сериализация / Десериализация - Границы процессов Результатом является ~100x меньшее время ожидания на вызов суб-LLM по сравнению с IPC сокетом. - Давай 1.

Обзор (машинный перевод)

Реализация рекурсивных языковых моделей (RLM) - стратегия масштабирования во времени вывода, которая позволяет LLM обрабатывать произвольно длинные контексты, рассматривая подсказки как внешние объекты, которые могут быть программно изучены и рекурсивно обработаны.

Обзор

RLM-go предоставляет среду Go REPL, в которой LLM-генерированный код может: Контекст доступа хранится как переменная

  • совершать рекурсивные суб-LLM-звонки через Query() и QueryBatched() Используйте стандартные операции Go для обработки текста
  • завершение сигнала FINAL() или FINAL_VAR()

Ключевые дизайнерские решения

В отличие от Python RLM, который использует Socket IPC, rlm-go использует **прямую инъекцию функции ** через Yaegi - интерпретатор Go. Это исключает: Накладные расходы на Socket Server

  • Сериализация/десериализация Границы процессов

Результатом является ~100x меньшее время ожидания на вызов суб-LLM по сравнению с IPC сокетом.

Требования

1.23 или более поздней версии (для строительства из источника)

  • Ключ LLM API:
  • ANTHROPIC_API_KEY для моделей Клода (по умолчанию) [[Т5]] для моделей Близнецов OPENAI_API_KEY для моделей OpenAI
  • (опционально) Подман или Докер для изолированного исполнения песочницы

Поддерживаемые модели

Провайдеры, модели, переменные

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

rlm-go

A Go implementation of Recursive Language Models (RLM) - an inference-time scaling strategy that enables LLMs to handle arbitrarily long contexts by treating prompts as external objects that can be programmatically examined and recursively processed.

Overview

RLM-go provides a Go REPL environment where LLM-generated code can:

  • Access context stored as a variable
  • Make recursive sub-LLM calls via Query() and QueryBatched()
  • Use standard Go operations for text processing
  • Signal completion with FINAL() or FINAL_VAR()

Key Design Decisions

Unlike the Python RLM which uses socket IPC, rlm-go uses direct function injection via Yaegi - a Go interpreter. This eliminates:

  • Socket server overhead
  • Serialization/deserialization
  • Process boundaries

The result is ~100x less latency per sub-LLM call compared to socket IPC.

Requirements

  • Go 1.23 or later (for building from source)
  • An LLM API key:
    • ANTHROPIC_API_KEY for Claude models (default)
    • GEMINI_API_KEY for Gemini models
    • OPENAI_API_KEY for OpenAI models
  • (Optional) Podman or Docker for isolated sandbox execution

Supported Models

Provider Models Env Variable
Anthropic claude-sonnet-4-20250514, claude-opus-4-20250514, etc. ANTHROPIC_API_KEY
Google gemini-3-flash-preview, gemini-3-pro-preview GEMINI_API_KEY
OpenAI gpt-5, gpt-5-mini OPENAI_API_KEY

The provider is auto-detected based on model name. Anthropic is the default.

Installation

# Download and install the latest release
curl -fsSL https://raw.githubusercontent.com/XiaoConstantine/rlm-go/main/install.sh | bash

This installs the rlm binary to ~/.local/bin/rlm.

Go Install

go install github.com/XiaoConstantine/rlm-go/cmd/rlm@latest

From Source

git clone https://github.com/XiaoConstantine/rlm-go.git
cd rlm-go
go build -o rlm ./cmd/rlm

As a Library

go get github.com/XiaoConstantine/rlm-go

Claude Code Integration

RLM includes a skill for Claude Code that provides documentation and usage guidance for large context processing.

Install the Skill

rlm install-claude-code

This creates a skill at ~/.claude/skills/rlm/SKILL.md that teaches Claude Code:

  • When to use RLM (contexts >50KB, token efficiency needed)
  • Command usage and options
Открыть полный README на GitHub

Рекомендуемые инструменты

Попробуйте другой запрос или уберите фильтр.

Установка

npx skillfish add xiaoconstantine/rlm-go
Новичок в MCP? Начните с руководства на mcpskill.org →