Skip to content

[WIP] nim anywhere next #78

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 34 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
32e3484
Stripped down README
rmkraus Apr 24, 2025
bda5c72
Cleaned up t he settings page, reduced dependencies.
rmkraus Apr 25, 2025
aa0a17a
Passed env vars through to tests.
rmkraus Apr 25, 2025
2f9b761
Return errors for missing messages
rmkraus Apr 25, 2025
955c6d0
Package updates.
rmkraus Apr 25, 2025
8bbe5c6
File cleanup
rmkraus Apr 25, 2025
0a9c986
Finished top level cleanup.
rmkraus Apr 25, 2025
6220d7d
Removed mode of the tools scripts.
rmkraus Apr 25, 2025
e171fc2
migrated linting to ruff
rmkraus Apr 25, 2025
20a0bb0
Moved CI pipelines to Ruff + Makefile.
rmkraus Apr 25, 2025
3669747
cleaned up child workspace settings.
rmkraus Apr 25, 2025
85d54b4
Added single agent tutorial. (#79)
AmeliaYe Apr 25, 2025
aa20189
Fixed pipx bug in postbuild and build from this brnach.
rmkraus Apr 25, 2025
54b9f86
Fixed linting.
AmeliaTaihui Apr 25, 2025
5f35a28
Finished new config of Ruff.
rmkraus Apr 25, 2025
bbfa388
Added check for TODO comments
rmkraus Apr 25, 2025
68db0ce
Update README.md
rmkraus Apr 25, 2025
77d49c1
Started script for agents the hard way, added js function to write to…
rmkraus Apr 28, 2025
18af5ab
fixed scolling issue
rmkraus Apr 28, 2025
e525a18
Working prep functions. Working editor injection.
rmkraus Apr 28, 2025
8886c36
dead scroll buffer below content
rmkraus Apr 28, 2025
840c48d
Working autoscroll
rmkraus Apr 28, 2025
598ea51
first lab half done
rmkraus Apr 28, 2025
c1efe19
describe tools done
rmkraus Apr 29, 2025
6116f00
memory working
rmkraus Apr 29, 2025
49cac74
first call to llm
rmkraus Apr 29, 2025
d95db66
done through tool calling
rmkraus Apr 29, 2025
b2973fd
finished first lab
rmkraus Apr 29, 2025
e1988fb
Cleaned up overview page.
rmkraus Apr 29, 2025
ef76dde
Removed editor test page.
rmkraus Apr 29, 2025
28de188
Fixed linting issues.
rmkraus Apr 29, 2025
150ef26
Visible sidebar collapse btn.
rmkraus Apr 29, 2025
58054be
more robots
rmkraus Apr 30, 2025
a7d918a
fixed scrolling
rmkraus May 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 15 additions & 25 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,42 +14,32 @@ permissions:

jobs:
ci:

runs-on: ubuntu-latest

strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]

steps:
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "pip"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
grep -vf req.filters.txt requirements.txt | pip install -r /dev/stdin
./code/tools/lint.sh deps

- name: Check Python syntax with Pylint
run: |
./code/tools/lint.sh pylint

- name: Check Type Hints with MyPy
run: |
./code/tools/lint.sh mypy

- name: Check code formatting with Black
run: |
./code/tools/lint.sh black

- name: Ensure Notebooks have no output
run: |
./code/tools/lint.sh ipynb





python -m pip install --upgrade pip wheel
pip install -r requirements.txt
pip install ruff mypy

- name: Check code formatting
run: make format
- name: Run code linters
run: make lint
- name: Check typehints
run: make typecheck
- name: Ensure notebooks have no output
run: make check-notebooks
62 changes: 0 additions & 62 deletions .github/workflows/generate-documentation.yml

This file was deleted.

2 changes: 0 additions & 2 deletions .github/workflows/generate-documentation_requirements.txt

This file was deleted.

2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Ignore generated or temporary files managed by the Workbench
.project/*
!.project/compose.yaml
!.project/spec.yaml
!.project/configpacks

Expand Down Expand Up @@ -56,6 +57,7 @@ coverage.xml
.hypothesis/
.pytest_cache/
cover/
.ruff_cache

# Workbench Project Layout
data/scratch/*
Expand Down
File renamed without changes.
19 changes: 8 additions & 11 deletions .project/spec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ layout:
- path: code/
type: code
storage: git
- path: docs/
- path: libs/
type: code
storage: git
- path: data/
Expand All @@ -25,8 +25,8 @@ layout:
environment:
base:
registry: nvcr.io
image: nvidia/ai-workbench/python-cuda122:1.0.3
build_timestamp: "20231214221614"
image: nvidia/ai-workbench/python-cuda122:1.0.6
build_timestamp: "20250205043304"
name: Python with CUDA 12.2
supported_architectures: []
cuda_version: "12.2"
Expand All @@ -53,8 +53,8 @@ environment:
url_command: jupyter lab list | head -n 2 | tail -n 1 | cut -f1 -d' ' | grep -v 'Currently'
programming_languages:
- python3
icon_url: ""
image_version: 1.0.3
icon_url: https://workbench.download.nvidia.com/static/img/ai-workbench-icon-rectangle.jpg
image_version: 1.0.6
os: linux
os_distro: ubuntu
os_distro_release: "22.04"
Expand All @@ -75,17 +75,14 @@ environment:
- python3-dev
- python3-pip
- vim
- less
- jq
- ssh
- name: pip
binary_path: /usr/local/bin/pip
binary_path: /usr/bin/pip
installed_packages:
- jupyterlab==4.0.7
- jupyterlab==4.2.5
package_manager_environment:
name: ""
target: ""
compose_file_path: ""
compose_file_path: .project/compose.yaml
execution:
apps:
- name: Visual Studio Code
Expand Down
Binary file removed .static/_static/generate_personal_key.png
Binary file not shown.
Binary file removed .static/_static/mac_dmg_drag.png
Binary file not shown.
Binary file removed .static/_static/na_frontend.png
Binary file not shown.
Binary file removed .static/_static/nim-anywhere.png
Binary file not shown.
Binary file removed .static/_static/nvwb_clone.png
Binary file not shown.
Binary file removed .static/_static/nvwb_left_menu.png
Binary file not shown.
Binary file removed .static/_static/nvwb_locations.png
Binary file not shown.
Binary file removed .static/_static/nvwb_logs.png
Binary file not shown.
Binary file removed .static/_static/nvwb_projects.png
Binary file not shown.
Binary file removed .static/_static/personal_key.png
Binary file not shown.
Binary file removed .static/_static/personal_key_form.png
Binary file not shown.
7 changes: 2 additions & 5 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,8 @@
"recommendations": [
"ms-python.vscode-pylance",
"ms-python.python",
"ms-python.debugpy",
"ms-python.mypy-type-checker",
"ms-python.black-formatter",
"ms-python.isort",
"ms-python.pylint",
"ms-toolsai.jupyter"
"ms-toolsai.jupyter",
"charliermarsh.ruff"
]
}
44 changes: 19 additions & 25 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,37 +1,33 @@
{
// file explorer configuration
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
".git": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/Thumbs.db": true,
"**/.venv": true,
"**/__pycache__": true,
"**/.mypy_cache": true,
"**/.ipynb_checkpoints": true,
"**/.terraform": true,
".project": true,
".vscode": true,
".github": true,
"**/.ruff_cache": true,
},


// global editor settings
"files.eol": "\n",
"editor.tabSize": 4,
"editor.insertSpaces": true,
"files.insertFinalNewline": true,
// remove this line to automatically forward ports
// in general, workbench will manage this already
"remote.autoForwardPorts": false,


// bash scripting configuration
"[shellscript]": {
"editor.tabSize": 4,
"editor.insertSpaces": false,
"editor.insertSpaces": false
},


// css style sheet configuration
"[css]": {
"editor.suggest.insertMode": "replace",
Expand All @@ -41,31 +37,29 @@
// js configuration
"[javascript]": {
"editor.maxTokenizationLineLength": 2500,
"editor.tabSize": 2,
"editor.tabSize": 2
},

// Python environment configuration
"python.terminal.activateEnvironment": true,
"python.defaultInterpreterPath": "/usr/bin/python3",
"isort.args":["--profile", "black"],
"isort.check": true,

// Ruff as formatter
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter",
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
"source.organizeImports": "explicit",
"source.fixAll": "explicit"
},
// Comment out this settings to disable auto-formatting
"editor.formatOnSave": true
},

"black-formatter.serverTransport": "stdio",
"black-formatter.args": [
"--line-length",
"120"
"ruff.enable": true,
"ruff.exclude": [],
// tutorial apps use a different python environment
"python.analysis.exclude": [
"code/tutorial_app/**",
"libs/**"
],
"pylint.severity": {
"refactor": "Information",
},

"python.analysis.ignore": ["code/tutorial_app/**"]
"mypy-type-checker.ignorePatterns": ["**/answers/*"],
}
43 changes: 43 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

## Help command
default: help
.PHONY: help
help: # Show help for each of the Makefile recipes.
@echo "Available targets:"
@grep -E '^[a-zA-Z0-9 -]+:.*#' Makefile | sort | while read -r l; do printf "\033[1;32m$$(echo $$l | cut -f 1 -d':')\033[00m:$$(echo $$l | cut -f 2- -d'#')\n"; done

## CI Pipeline logic
.PHONY: ci lint format typecheck test check-notebooks
ci: lint format typecheck check-notebooks test # Run the ci pipeline locally

lint: # Examing the code with linters
ruff check .

format: # Check the code formatting
ruff format --check .

format-fix: # Autofix the code formatting where it is possible

typecheck: # Check the type hints in the code
mypy .

test: # Run unit tests
# pytest --quiet

check-notebooks: # Ensure the jupyter notebooks have no saved
find . -name "*.ipynb" -exec jupyter nbconvert --clear-output --inplace {} +
git diff --exit-code || (echo "Notebooks have output. Clear it before committing." && exit 1)
Loading
Loading