‹ Reports
The Dispatch

OSS Report: dnhkng/GlaDOS


GLaDOS Project Advances with New AI Model Support, Faces Cross-Platform Challenges

The GLaDOS project aims to create a real-life version of the AI from the Portal video game series, combining hardware and software elements to build an interactive, aware, and embodied AI system. Recent development has focused on expanding model support and improving cross-platform compatibility.

Development activity has been significant, with multiple pull requests addressing key areas such as AI model integration, installation processes, and user interface improvements. The project's ambitious scope, combining cutting-edge AI technologies with plans for physical embodiment, continues to attract community interest and contributions.

Recent Activity

Recent pull requests and issues indicate a focus on enhancing AI capabilities and resolving cross-platform compatibility issues:

The development team has been actively collaborating on these improvements:

  1. David (dnhkng):

    • Merged several PRs including macOS installation instructions and UI improvements
    • Updated README and made configuration updates
  2. Lawrence Akka (lawrenceakka):

    • Implemented UI improvements for smoother speech
    • Moved startup logic into its own method for better modularity
  3. Ghostboo-124:

    • Updated README with macOS installation instructions
    • Edited Windows batch files
  4. Vaibhav Patel (vp2305):

    • Added support for changing voice modules
    • Updated configuration files for voice customization
  5. Judtoff:

    • Added support for GPU flags (--Split-mode row and --Flash-attn)

Of Note

  1. The project is exploring support for smaller AI models like Rocket-3B, potentially making GLaDOS more accessible to users with limited hardware resources.

  2. Cross-platform compatibility, especially for MacOS and Windows, remains a significant challenge, as evidenced by ongoing issues and PRs focused on installation and execution problems.

  3. There's a growing interest in expanding the project's voice capabilities, with feature requests for additional character voices beyond GLaDOS.

  4. The project is actively working on improving UI elements and speech generation, indicating a focus on enhancing user experience and interaction quality.

  5. GPU optimization and performance improvements are ongoing areas of development, reflecting the project's commitment to efficient execution on various hardware configurations.

Quantified Reports

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 0 0 0 0 0
30 Days 0 0 0 0 0
90 Days 8 2 46 8 1
All Time 48 34 - - -

Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.

Quantify commits



Quantified Commit Activity Over 30 Days

Developer Avatar Branches PRs Commits Files Changes
None (aaronchantrill) 0 1/0/0 0 0 0

PRs: created by that dev and opened/merged/closed-unmerged during the period

Detailed Reports

Report On: Fetch issues



Here is my analysis of the GitHub Issues for the GLaDOS project:

Recent Activity Analysis

Recent GitHub issue activity shows active development and community engagement, with several new feature requests, bug reports, and implementation discussions over the past few months.

Some notable issues include:

  • Hardware/robotics discussions (#28) - There is interest in developing physical embodiment for GLaDOS, including animatronics and motor controllers. This represents a significant expansion of the project's scope beyond software.

  • Cross-platform compatibility (#30, #15, #23) - There have been ongoing efforts to improve compatibility across Windows, Mac and Linux. This has been challenging, especially for Windows users.

  • Performance optimizations (#43, #22) - Users have reported high CPU usage and GPU utilization issues, indicating a need for further optimization.

  • Enhanced AI capabilities (#66, #47) - There are discussions about incorporating more advanced AI features like multimodal inputs/outputs and improved language understanding.

  • Voice/TTS improvements (#52, #53) - Work is being done to enhance the text-to-speech capabilities and voice quality.

A common theme is balancing the project's ambitious goals with practical implementation challenges across different platforms and hardware configurations. The issues demonstrate strong community interest but also highlight the complexity of building a fully-featured GLaDOS system.

Issue Details

Most recently created issues:

  1. #80: "MacOS: No such file or directory: PosixPath('/Users/user/repos/GlaDOS/submodules/llama.cpp/llama-server')" (Open)

    • Created 39 days ago, last updated 29 days ago
    • Appears to be a file path issue specific to MacOS
  2. #79: "ggml_metal_init: error: Error Domain=MTLLibraryErrorDomain Code=3 "program_source:3:10: fatal error: 'ggml-common.h' file not found" (Open)

    • Created 47 days ago
    • Likely related to Metal GPU acceleration on MacOS
  3. #78: "[Feature Request] Additional Voices: Wheatley, etc." (Open)

    • Created 55 days ago
    • Suggests expanding voice options beyond GLaDOS

Most recently updated issues:

  1. #80: As mentioned above (MacOS file path issue)

  2. #73: "Can't connect to external LLM servers" (Open)

    • Created 75 days ago, last updated 66 days ago
    • Involves difficulties connecting to external language models
  3. #72: "A strange, but clever way to train new voices in the piper (onnx) format?" (Open)

    • Created 76 days ago, last updated 51 days ago
    • Discusses potential methods for training new voice models

These issues reflect ongoing work on platform compatibility, voice capabilities, and integration with external AI services.

Report On: Fetch pull requests



Overview

The GLaDOS project, which aims to create a real-life version of the AI from the Portal video game series, has seen a variety of pull requests (PRs) addressing enhancements, bug fixes, and new features. The analysis of these PRs reveals active development and community engagement, with contributions focusing on improving installation processes, adding new functionalities, and refining existing code.

Summary of Pull Requests

Open Pull Requests

  • PR #83: Demonstrates GlaDOS running on a smaller LLM model called Rocket-3B, requiring only 6.35 GiB of VRAM. Includes updates to configuration files and code adjustments for compatibility with the new model.
  • PR #77: Fixes installation issues on macOS by updating installation scripts and README instructions. Introduces ccache for faster compilation times.
  • PR #82: Fixes UI issues by ensuring .ansi files are read with UTF-8 encoding and adds a batch script for easier UI launch on Windows.
  • PR #81: Adds client-side configuration for sampling parameters, allowing users to customize LLM behavior based on different scenarios.
  • PR #76: Addresses OpenAI API incompatibility by enhancing line processing in glados.py.
  • PR #74: Introduces a Y/N start option in the Windows installer and begins implementation of text-to-speech functionality.

Closed Pull Requests

  • PR #70: Adds macOS installation instructions to the README, improving accessibility for macOS users.
  • PR #67: Introduces a new UI based on Portal 2's end credits, requiring the textual package.
  • PR #65: Moves startup logic into its own method for better modularity and ease of integration with other modules.
  • PR #64: Updates paths in llama.py to reflect changes in the llama.cpp repository structure.
  • PR #63: Adds automated macOS installation scripts but was not merged due to potential issues.

Analysis of Pull Requests

The analysis of the GLaDOS project's pull requests reveals several key themes:

  1. Active Development and Community Engagement: The frequency and variety of PRs indicate an active development environment with contributions from both the core team and the community. This is further supported by the project's significant community interest, as evidenced by its stars and forks on GitHub.

  2. Focus on Enhancements and Bug Fixes: Many PRs focus on enhancing existing functionalities or fixing bugs. For instance, PRs like #81 and #76 address specific user needs or compatibility issues, demonstrating responsiveness to user feedback.

  3. Improvement of Installation Processes: Several PRs aim to simplify or improve the installation process across different platforms (e.g., PRs #77 and #70). This is crucial for a project with complex setup requirements, as it lowers the barrier to entry for new users.

  4. UI/UX Improvements: The introduction of a new UI in PR #67 highlights efforts to enhance user experience. Such improvements are essential for projects aiming for broader adoption beyond just developer communities.

  5. Modularization and Code Quality Enhancements: PRs like #65 that focus on refactoring code for better modularity indicate ongoing efforts to improve code quality and maintainability. This is important for long-term project sustainability.

  6. Experimental Features and Community Contributions: Some PRs introduce experimental features (e.g., PR #63) or are marked as drafts (e.g., PR #11), suggesting an open approach to experimentation and community contributions. However, not all experimental features are merged, indicating careful consideration of stability versus innovation.

  7. Documentation and Accessibility Improvements: Several PRs enhance documentation (e.g., PRs #70 and #74), making it easier for users to understand and use the software. Clear documentation is vital for open-source projects to facilitate contributions and user adoption.

In conclusion, the GLaDOS project is characterized by active development focused on enhancing functionality, improving user experience, simplifying installation processes, and maintaining high code quality standards. The project's openness to community contributions and experimentation suggests a healthy collaborative environment conducive to innovation while being mindful of stability and usability.

Report On: Fetch commits



Development Team and Recent Activity

David (dnhkng)

  • Merged several pull requests, including macOS installation instructions and UI improvements
  • Updated README with installation instructions and project information
  • Made configuration updates and bug fixes
  • Added support for new models (Llama-3) and extended context length

Lawrence Akka (lawrenceakka)

  • Implemented UI improvements for smoother speech
  • Moved startup into its own method for easier module importing
  • Improved logging for libwhisper output

Ghostboo-124

  • Updated README with macOS installation instructions
  • Made edits to Windows batch files

Vaibhav Patel (vp2305)

  • Added support for changing voice modules
  • Updated configuration files for voice customization

Judtoff

  • Added support for GPU flags (--Split-mode row and --Flash-attn)

tn-17

  • Fixed performance issues when using CUDA provider
  • Added instructions for using Python 3.10

Magistr (umag)

  • Created initial Dockerfile for the project
  • Added WSL2 guide to documentation

Patterns and Themes:

  1. Active development with frequent updates and merges
  2. Focus on improving installation process across different platforms
  3. Ongoing enhancements to speech and UI components
  4. Attention to performance optimization, especially for GPU usage
  5. Community-driven contributions, particularly for documentation and cross-platform support
  6. Regular updates to AI models and underlying technologies (e.g., Llama-3)
  7. Emphasis on configuration flexibility and customization options