Skip to content

Commit 7e76380

Browse files
committed
Add aider example
1 parent 55b3b57 commit 7e76380

File tree

5 files changed

+155
-0
lines changed

5 files changed

+155
-0
lines changed

Dockerfile.local

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
FROM jupyter/base-notebook:python-3.11
2+
3+
ARG COURSE_NAME=course_993
4+
5+
USER root
6+
7+
COPY --from=ghcr.io/astral-sh/uv:0.8.3 /uv /uvx /bin/
8+
9+
COPY ./requirements.txt .
10+
COPY ./jupyter_notebook_config.py /home/jovyan/.jupyter/
11+
12+
RUN uv pip install --system --no-cache-dir -r requirements.txt && \
13+
mamba install -c conda-forge jupyter-collaboration
14+
15+
COPY ./L1 /home/jovyan/work
16+
17+
RUN chown -R jovyan:users /home/jovyan
18+
19+
ENTRYPOINT []
20+
USER jovyan
21+
22+
CMD ["start-notebook.py"]
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "c34b3cbd-4745-4f0b-a18b-18d9e06d30fa",
7+
"metadata": {},
8+
"outputs": [],
9+
"source": [
10+
"from openai import OpenAI\n",
11+
"client = OpenAI()\n",
12+
"response = client.chat.completions.create(\n",
13+
" model=\"gpt-4o-mini\",\n",
14+
" messages=[{\"role\": \"user\", \"content\": \"What is Python?\"}]\n",
15+
")\n",
16+
"print(response.choices[0].message.content)"
17+
]
18+
},
19+
{
20+
"cell_type": "code",
21+
"execution_count": null,
22+
"id": "0a1d4923-9b0b-477d-b2cb-5b649b7a8184",
23+
"metadata": {},
24+
"outputs": [],
25+
"source": []
26+
}
27+
],
28+
"metadata": {
29+
"kernelspec": {
30+
"display_name": "Python 3 (ipykernel)",
31+
"language": "python",
32+
"name": "python3"
33+
},
34+
"language_info": {
35+
"codemirror_mode": {
36+
"name": "ipython",
37+
"version": 3
38+
},
39+
"file_extension": ".py",
40+
"mimetype": "text/x-python",
41+
"name": "python",
42+
"nbconvert_exporter": "python",
43+
"pygments_lexer": "ipython3",
44+
"version": "3.12.2"
45+
}
46+
},
47+
"nbformat": 4,
48+
"nbformat_minor": 5
49+
}

L1/test.ipynb

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "c34b3cbd-4745-4f0b-a18b-18d9e06d30fa",
7+
"metadata": {},
8+
"outputs": [],
9+
"source": [
10+
"from openai import OpenAI\n",
11+
"client = OpenAI()\n",
12+
"response = client.chat.completions.create(\n",
13+
" model=\"gpt-4o-mini\",\n",
14+
" messages=[{\"role\": \"user\", \"content\": \"What is Python?\"}]\n",
15+
")\n",
16+
"print(response.choices[0].message.content)"
17+
]
18+
},
19+
{
20+
"cell_type": "code",
21+
"execution_count": null,
22+
"id": "0a1d4923-9b0b-477d-b2cb-5b649b7a8184",
23+
"metadata": {},
24+
"outputs": [],
25+
"source": []
26+
}
27+
],
28+
"metadata": {
29+
"kernelspec": {
30+
"display_name": "Python 3 (ipykernel)",
31+
"language": "python",
32+
"name": "python3"
33+
},
34+
"language_info": {
35+
"codemirror_mode": {
36+
"name": "ipython",
37+
"version": 3
38+
},
39+
"file_extension": ".py",
40+
"mimetype": "text/x-python",
41+
"name": "python",
42+
"nbconvert_exporter": "python",
43+
"pygments_lexer": "ipython3",
44+
"version": "3.12.2"
45+
}
46+
},
47+
"nbformat": 4,
48+
"nbformat_minor": 5
49+
}

jupyter_notebook_config.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Copyright (c) Jupyter Development Team.
2+
# Distributed under the terms of the Modified BSD License.
3+
4+
from jupyter_core.paths import jupyter_data_dir
5+
6+
c = get_config()
7+
c.NotebookApp.ip = '0.0.0.0'
8+
c.NotebookApp.port = 8888
9+
c.NotebookApp.open_browser = False
10+
c.NotebookApp.notebook_dir = '/home/jovyan/work'
11+
c.NotebookApp.quit_button = False
12+
c.NotebookApp.shutdown_no_activity_timeout = 5*60
13+
c.MappingKernelManager.cull_idle_timeout = 20*60
14+
c.MappingKernelManager.cull_interval = 30
15+
c.MappingKernelManager.cull_connected = True
16+
c.NotebookApp.allow_remote_access = True
17+
c.NotebookApp.allow_password_change = False
18+
c.NotebookApp.allow_origin = '*'
19+
c.NotebookApp.disable_check_xsrf = True
20+
c.FileContentsManager.delete_to_trash = False
21+
22+
c.NotebookApp.tornado_settings = {
23+
'headers': {
24+
'Content-Security-Policy': "frame-ancestors https://*.lab-develop.deeplearningai.net https://*.lab.deeplearningai.net https://*.lab.deeplearningai.net https://*.deeplearningai.net https://*.deeplearningai.net:* https://localhost https://localhost:* http://*.lab.deeplearningai.net http://*.lab.deeplearningai.net http://*.deeplearningai.net https://*.deeplearningai.net http://*.deeplearningai.net:* http://localhost http://localhost:* https://*.firebaseapp.com http://*.firebaseapp.com https://*.web.app http://*.web.app http://*.deeplearning.ai https://*.deeplearning.ai http://ac4e-develop.deeplearning.ai http://ac4e-test.deeplearning.ai http://ac4e.deeplearning.ai https://ac4e-develop.deeplearning.ai https://ac4e-test.deeplearning.ai https://ac4e.deeplearning.ai"
25+
}
26+
}

requirements.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
jupyter
2+
nbconvert
3+
langchain==0.3.18
4+
langchain-openai==0.3.5
5+
langchain-anthropic==0.3.7
6+
langgraph==0.2.72
7+
langmem==0.0.8
8+
python-dotenv==1.0.1
9+
aider-install==0.2.0

0 commit comments

Comments
 (0)