Skip to main content

Blazing fast local AI Agent for Python coding

Project description

Nemo Agent

PyPI - Version

Nemo Agent

Nemo Agent is an expert Python AI software developer.

Features

  • Runs blazing fast locally on an RTX 4070 or greater
  • Generates Python project structures automatically using poetry
  • Writes Python code based on task descriptions
  • Executes development tasks using AI-generated commands
  • Utilizes the mistral-nemo language model for intelligent code generation
  • Implements best practices in Python development automatically
  • Writes and runs passing tests up to 80%+ test coverage using pytest
  • Automatically fixes and styles code using pylint
  • Utilizes git to commit and track changes

Coding Ability

  • Can solve some leetcode hards on some runs in about 30 seconds on an RTX 4090
  • Can apply time complexity constraints in task requirements

Demo Video

Watch on Youtube

Local Install

Requirements

  • Python 3.9 or higher
  • git
  • curl
  • Ollama running mistral-nemo
  • Ubuntu (22.04 or 24.04) with a minimum of an RTX 4070

Requirements Installation

  • Python, curl, git are pre-installed on Ubuntu
  • Ollama install instructions:
    • curl -fsSL https://ollama.com/install.sh | sh
    • ollama pull mistral-nemo
  • nemo-agent install:
    • pip install nemo-agent
  • You are ready to use nemo-agent

Cloud Install

Requirements

  • RunPod account setup with your SSH and billing information

RunPod Setup

  • Make sure you have setup your SSH keys
  • Select a 4090 pod
  • Select the RunPod Pytorch 2.1.1 template
  • Edit the template:
    • Set Container Disk to 60 GB
    • Set Expose HTTP Ports to 8888, 11434
    • Add environment variables with OLLAMA_HOST key and 0.0.0.0 value
  • Deploy your pod
  • After deploying then login via SSH
  • Run on the pod: curl -fsSL https://ollama.com/install.sh | sh && ollama serve
  • Run on the pod: ollama pull mistral-nemo
  • Run on the pod: pip install nemo-agent
  • You are ready to use nemo-agent

Usage

After installation, you can use Nemo Agent from the command line:

nemo-agent "Your task description here" If you run nemo-agent without any arguments, it will prompt you to enter a task.

Examples

Create a simple calculator:

nemo-agent "Create a simple calculator"

Generate a fizzbuzz program:

nemo-agent "Create a fizzbuzz script"

Limitations

  • LLM codegen issues mean that web APIs like Flask and FastAPI are not supported.
  • Due to the LLM getting confused with paths and files - writing 1 code and 1 test file is only supported.

Notes

  • Tested all local models that can run on an RTX 4090 on Ollama other than mistral-nemo and none can be prompted to complete the task.
  • Tested with Mistral Nemo hosted API - the local/API models are not the same and the API version is very buggy with prompting

Contributing

Contributions to Nemo Agent are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Disclaimer

Nemo Agent generates code using AI. While it strives for accuracy and best practices, the generated code should be reviewed and tested before being used in a production environment.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nemo_agent-1.0.1.tar.gz (17.8 kB view hashes)

Uploaded Source

Built Distribution

nemo_agent-1.0.1-py3-none-any.whl (17.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page