From 47d86a3e166d5cb2c24d62ce15f4d60787613501 Mon Sep 17 00:00:00 2001 From: Yongfeng Zhang Date: Sat, 30 Nov 2024 23:30:06 -0500 Subject: [PATCH 1/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fbabf349..78da2fd3 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# AIOS: LLM Agent Operating System (AgentOS) +# AIOS: AI Agent Operating System From 24f3cfd7797b5e1381f2113db83a506b50b21db8 Mon Sep 17 00:00:00 2001 From: Yongfeng Zhang Date: Tue, 3 Dec 2024 23:02:58 -0500 Subject: [PATCH 2/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 78da2fd3..5bf08794 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ agiresearch%2FAIOS | Trendshift -AIOS is the AI Agent Operating System, which embeds large language model (LLM) into the operating system as the brain of the OS, facilitating the development and deployment of LLM-based AI Agents. AIOS is designed to address problems (e.g., scheduling, context switch, memory management, storage management, tool management, Agent SDK management, etc.) during the development and deployment of LLM-based agents, for a better ecosystem among agent developers and users. AIOS includes the AIOS Kernel (this [AIOS](https://github.com/agiresearch/AIOS) repository) and the AIOS SDK (the [Cerebrum](https://github.com/agiresearch/Cerebrum) repository). AIOS supports both Web UI and Terminal UI. +AIOS is the AI Agent Operating System, which embeds large language model (LLM) into the operating system and facilitates the development and deployment of LLM-based AI Agents. AIOS is designed to address problems (e.g., scheduling, context switch, memory management, storage management, tool management, Agent SDK management, etc.) during the development and deployment of LLM-based agents, towards a better AIOS-Agent ecosystem for agent developers and agent users. AIOS includes the AIOS Kernel (this [AIOS](https://github.com/agiresearch/AIOS) repository) and the AIOS SDK (the [Cerebrum](https://github.com/agiresearch/Cerebrum) repository). AIOS supports both Web UI and Terminal UI. ## 🏠 Architecture of AIOS ### Overview From 0a4722e6e090e26c977977f2ade11dcd2ece383c Mon Sep 17 00:00:00 2001 From: Yongfeng Zhang Date: Wed, 18 Dec 2024 18:26:11 -0500 Subject: [PATCH 3/3] Create test.yml --- .github/workflows/test.yml | 98 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000..5cd28cbb --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,98 @@ +# This workflow will install Python dependencies, run tests and lint with a single version of Python +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: AIOS Application + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + ref: main # Specify main branch + + - name: Set up Python 3.10 + uses: actions/setup-python@v3 + with: + python-version: "3.10" + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + + - name: Git Clone Action + # You may pin to the exact commit or the version. + # uses: sudosubin/git-clone-action@8a93ce24d47782e30077508cccacf8a05a891bae + uses: sudosubin/git-clone-action@v1.0.1 + with: + # Repository owner and name. Ex: sudosubin/git-clone-action + repository: agiresearch/Cerebrum + path: Cerebrum + + - name: Install cerebrum special edition + run: | + python -m pip install -e Cerebrum/ + + - name: Run AIOS kernel in background + env: + GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} + run: | + # Set environment variable when starting kernel + export GEMINI_API_KEY=${{ secrets.GEMINI_API_KEY }} + bash runtime/launch_kernel.sh &>logs & + sleep 10 # Wait for kernel to start + + # Check if kernel is running + if curl -s http://localhost:8000/health > /dev/null; then + echo "Kernel started successfully" + else + echo "Error: Kernel failed to start" + exit 1 + fi + + - name: Run the run-agent code + env: + GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} + run: | + # Verify if API key is set + if [ -z "$GEMINI_API_KEY" ]; then + echo "Error: GEMINI_API_KEY is not set in GitHub Secrets" + exit 1 + fi + run-agent \ + --llm_name gemini-1.5-flash \ + --llm_backend google \ + --agent_name_or_path demo_author/demo_agent \ + --task "Tell me what is core idea of AIOS" \ + --aios_kernel_url http://localhost:8000 \ + 2>&1 | tee agent.log + + - name: Upload a Build Artifact + if: always() # Upload logs even if job fails + uses: actions/upload-artifact@v4.4.3 + with: + name: logs + path: | + logs + agent.log + + - name: Collect debug information + if: failure() + run: | + echo "=== Kernel Logs ===" + cat logs + echo "=== Environment Variables ===" + env | grep -i api_key || true + echo "=== Process Status ===" + ps aux | grep kernel