Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions 01-hello/src/entry.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from js import Response
from workers import Response

async def on_fetch(request, env):
return Response.new("Hello world!")
return Response("Hello world!")
4 changes: 2 additions & 2 deletions 02-binding/src/entry.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from js import Response
from workers import Response

async def on_fetch(request, env):
await env.FOO.put("bar", "baz")
bar = await env.FOO.get("bar")
return Response.new(bar) # returns "baz"
return Response(bar) # returns "baz"
4 changes: 2 additions & 2 deletions 04-langchain/src/worker.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from js import Response
from workers import Response
from langchain_core.prompts import PromptTemplate
from langchain_openai import OpenAI

Expand All @@ -8,4 +8,4 @@ async def on_fetch(request, env):
chain = prompt | llm

res = await chain.ainvoke({"profession": "electrician"})
return Response.new(res.split(".")[0].strip())
return Response(res.split(".")[0].strip())
16 changes: 12 additions & 4 deletions 05-query-d1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,26 @@ Warning: Python support in Workers is experimental and things will break. This d
Currently, Python Workers using packages cannot be deployed and will only work in local development for the time being.

### How to Run

Download this quotes file from [Hugging Face in SQL form](https://huggingface.co/datasets/lizziepika/quotes_sql/blob/main/data.sql)

Create a new D1 database by running on the command line `npx wrangler d1 create {D1-NAME}`. Copy and paste the output into your `wrangler.toml` to bind your D1 database to your Python Worker.

Ingest the SQL file you've downloaded by running:

```
npx wrangler d1 execute {D1-NAME} --local --file=./data.sql
```

Ensure that your Wrangler version is up to date (3.30.0 and above).

```
$ wrangler -v
⛅️ wrangler 3.30.0
```
Now, if you run `wrangler dev` within this directory, it should use the config in`wrangler.toml` to run the demo.
```

Now, if you run `wrangler dev` within this directory, it should use the config in `wrangler.toml` to run the demo.

You can also run `wrangler deploy` to deploy the demo.
You can also run `wrangler deploy` to deploy the demo (though you'll need to repeat the ingestion step above for the remote DB).

Finally, get a random quote from the database by visiting your deployed worker in the browser!<img width="1421" alt="deployed app" src="https://github.com/user-attachments/assets/131a2836-2305-4b73-a54a-50dac039108f">
Finally, get a random quote from the database by visiting your deployed worker in the browser!<img width="1421" alt="deployed app" src="https://github.com/user-attachments/assets/131a2836-2305-4b73-a54a-50dac039108f">
4 changes: 2 additions & 2 deletions 05-query-d1/src/entry.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from js import Response
from workers import Response

async def on_fetch(request, env):
query = """
Expand All @@ -11,4 +11,4 @@ async def on_fetch(request, env):
data = results.results[0]

# Return a JSON response
return Response.json(data)
return Response.json(data)
5 changes: 4 additions & 1 deletion 05-query-d1/wrangler.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
#:schema node_modules/wrangler/config-schema.json
compatibility_date = "2024-08-06"
main = "src/entry.py"
compatibility_flags = ["python_workers"]


[ai]
binding = "AI"

[[d1_databases]]
binding = "DB" # i.e. available in your Worker on env.DB
database_name = "quotes" # REPLACE WITH YOUR DB NAME
database_id = "408cddb7-e3f7-40d7-a4f7-33136a7fd3fa" # REPLACE WITH YOUR DB ID
database_id = "408cddb7-e3f7-40d7-a4f7-33136a7fd3fa" # REPLACE WITH YOUR DB ID