MCP - Titan Memory Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Collaboration between GitHub users @jasonkneen and @ExpressionsBot

  • Uses TensorFlow.js for efficient tensor operations in the neural memory model with operations wrapped in tf.tidy() for proper memory management

  • Implements a type-safe implementation with TypeScript including type-safe MCP tool definitions

🧠 MCP - Titan 메모리 서버 구현

@jasonkneen@ExpressionsBot 의 협업

X에서 우리를 팔로우하세요

Google Research의 논문 "프로그래밍을 위한 생성적 AI: 공통 작업 프레임워크" 에서 영감을 받은 구현입니다. 이 서버는 메모리 벡터를 통해 상태를 유지하면서 시퀀스를 학습하고 예측할 수 있는 신경 메모리 시스템을 제공하며, 연구에 제시된 코드 생성 및 이해 향상 원칙을 따릅니다.

📚 연구 배경

이 구현은 코드 생성 모델을 평가하고 개선하기 위한 프레임워크를 소개하는 Google Research 논문(Muennighoff et al., 2024)에 제시된 개념을 기반으로 합니다. Titan Memory Server는 해당 논문의 핵심 개념을 구현합니다.

  • 메모리 증강 시퀀스 학습
  • 참신함 감지를 위한 놀라움 지표
  • 안정적인 학습을 위한 매니폴드 최적화
  • 메모리 벡터를 통한 상태 유지

이러한 기능은 더 나은 메모리 및 상태 관리를 통해 코드 이해와 생성을 개선한다는 본 논문의 목표와 일치합니다.

🚀 특징

  • 구성 가능한 차원을 갖춘 신경 기억 모델
  • 시퀀스 학습 및 예측
  • 놀라운 메트릭 계산
  • 모델 지속성(저장/로드)
  • 메모리 상태 관리
  • 전체 MCP 도구 통합

📦 설치

지엑스피1

🛠️ 사용 가능한 MCP 도구

1. 🎯 init_model

사용자 지정 구성으로 Titan 메모리 모델을 초기화합니다.

{ inputDim?: number; // Input dimension (default: 64) outputDim?: number; // Output/Memory dimension (default: 64) }

2. 📚 트레인_스텝

현재 및 다음 상태 벡터를 사용하여 단일 교육 단계를 수행합니다.

{ x_t: number[]; // Current state vector x_next: number[]; // Next state vector }

3. 🔄 포워드 패스

입력 벡터를 사용하여 모델에 대한 전방 패스를 실행합니다.

{ x: number[]; // Input vector }

4. 💾 모델 저장

모델을 지정된 경로에 저장합니다.

{ path: string; // Path to save the model }

5. 📂 로드_모델

지정된 경로에서 모델을 로드합니다.

{ path: string; // Path to load the model from }

6. ℹ️ get_status

현재 모델 상태와 구성을 확인하세요.

{} // No parameters required

7. 🔄 훈련 시퀀스

벡터 시퀀스에 대해 모델을 학습합니다.

{ sequence: number[][]; // Array of vectors to train on }

🌟 사용 예시

// Initialize model await callTool('init_model', { inputDim: 64, outputDim: 64 }); // Train on a sequence const sequence = [ [1, 0, 0, /* ... */], [0, 1, 0, /* ... */], [0, 0, 1, /* ... */] ]; await callTool('train_sequence', { sequence }); // Run forward pass const result = await callTool('forward_pass', { x: [1, 0, 0, /* ... */] });

🔧 기술 세부 사항

  • 효율적인 텐서 작업을 위해 TensorFlow.js로 구축됨
  • 안정적인 학습을 위해 매니폴드 최적화를 사용합니다.
  • 참신함 감지를 위한 놀라움 측정법 구현
  • 적절한 텐서 정리를 통한 메모리 관리
  • TypeScript를 사용한 유형 안전 구현
  • 포괄적인 오류 처리

🧪 테스트

이 프로젝트에는 다음을 포함하는 포괄적인 테스트가 포함됩니다.

  • 모델 초기화 및 구성
  • 훈련 및 포워드 패스 작업
  • 메모리 상태 관리
  • 모델 지속성
  • 에지 케이스와 오류 처리
  • 텐서 정리 및 메모리 관리

다음을 사용하여 테스트를 실행합니다.

npm test

🔍 구현 참고 사항

  • 모든 텐서 연산은 적절한 메모리 관리를 위해 tf.tidy() 로 래핑됩니다.
  • 자세한 오류 메시지로 적절한 오류 처리를 구현합니다.
  • 유형 안전 MCP 도구 정의를 사용합니다.
  • 작업 간 메모리 상태를 유지합니다.
  • 엡실론 허용 오차를 통한 부동 소수점 정밀도 문제 처리

📝 라이센스

MIT 라이센스 - 필요에 따라 자유롭게 사용하고 수정하세요!

-
security - not tested
F
license - not found
-
quality - not tested

향상된 코드 이해와 생성을 위한 메모리 증강 모델을 통해 신경 메모리 시퀀스 학습을 활성화하고, 상태 관리, 새로운 기능 감지, 모델 지속성 기능을 제공합니다.

  1. 📚 Research Background
    1. 🚀 Features
      1. 📦 Installation
        1. 🛠️ Available MCP Tools
          1. 1. 🎯 init_model
          2. 2. 📚 train_step
          3. 3. 🔄 forward_pass
          4. 4. 💾 save_model
          5. 5. 📂 load_model
          6. 6. ℹ️ get_status
          7. 7. 🔄 train_sequence
        2. 🌟 Example Usage
          1. 🔧 Technical Details
            1. 🧪 Testing
              1. 🔍 Implementation Notes
                1. 📝 License
                  ID: iasz64qj43