Pandas 3.0 was just released yesterday!! π€
And guess what? You can already play with it in Notebook.link.
I quickly built a Notebook.link link for you to play with it now:
notebook.link/@martinRenou...
Pandas 3.0 was just released yesterday!! π€
And guess what? You can already play with it in Notebook.link.
I quickly built a Notebook.link link for you to play with it now:
notebook.link/@martinRenou...
If you are (or know of) a Master's or PhD student looking for an internship, I am proposing the subject: 'Efficient Structured Generation with Grammar-Aware Sampling Techniques.' www.dropbox.com/scl/fi/7iwfg...
If you're passionate about structured generation, feel free to reach out!
Screenshot of Awesome LLM constrained decoding repo.
Litelines got added to the Awesome LLM constrained decoding repo π
Itβs great to share this space with more established libraries like Outlines, XGrammar, or Guidance.
Link to the Awesome LLM constrained repo:
github.com/Saibo-creato...
Link to litelines:
alonsosilvaallende.github.io/litelines/
The following code: ```python from fastlite import database, diagram from graphviz import Source from pathlib import Path from fastcore.net import urlsave url = 'https://github.com/lerocha/chinook-database/raw/master/ChinookDatabase/DataSources/Chinook_Sqlite.sqliteβ path = Path('chinook.sqlite') if not path.exists(): urlsave(url, path) db = database("chinook.sqlite") diagram(db.t) ``` displays the database diagram.
You can display SQLite database diagrams in @marimo.io using `fastlite` and `graphviz`.
Here is a basic molab notebook to play online:
molab.marimo.io/notebooks/nb...
Here is my merged PR π
github.com/marimo-team/...
The following code: ```python import graphviz dot = graphviz.Digraph() dot.edge("hello", "world") dot.edge("hello", "name") dot ``` displays a graph with three nodes: 'hello', 'world', 'name', and two directed edges: from hello to world and from hello to name.
marimo @marimo.io now supports graphviz
Here is a basic notebook to play online:
molab.marimo.io/notebooks/nb...
Here is my merged PR π
github.com/marimo-team/...
Batch processing using transformers and litelines libraries. In this video, I process 900 prompts in 30 seconds with an RTX A4000 with 16GB of VRAM.
www.youtube.com/watch?v=7hVU...
The new litelines release should work much better in marimo notebooks.
You can try it in a marimo molab: molab.marimo.io/notebooks/nb...
Here is litelines documentation: alonsosilvaallende.github.io/litelines/
Here is the release changelog: github.com/alonsosilvaa...
Qwen logo in Chinese.
New blog post: Force a Qwen model not to use Chinese
alonsosilvaallende.github.io/blog/posts/2...
How is it possible that a 1.7 billion parameter model succeeds where a model with hundreds or thousands of billions of parameters fails?
www.youtube.com/watch?v=wmgw...
How to define a logits processor and generate a structured response.
How to visualize the selected paths defined by the logits processors.
The latest release of Litelines supports batch processing for Transformers library.
`pip install --upgrade litelines`
Here is a colab to get started:
huggingface.co/datasets/alo...
And here is the library documentation:
alonsosilvaallende.github.io/litelines/
My talk, "Processors for Language Models," at PyData Paris 2025 is now available. I discuss my personal project, Litelines, as well as common libraries used to transform unstructured data into structured data.
Link to the video:
www.youtube.com/watch?v=VP4I...
The slides of the presentation can be found here: alonsosilvaallende.github.io/automata-gui...
The repo of the presentation is here: github.com/alonsosilvaa...
I gave a talk about structured code generation for domain-specific languages: Abstract Syntax Trees (ASTs), Concrete Syntax Trees (CSTs), Deterministic Finite Automata (DFA), Regular Expressions (Regex), Pushdown Automata (PA), Context-Free Grammars (CFGs), outlines, guidance, Georges Perec, etc.
Here are the starting notebooks I presented at @pydataparis.bsky.social
tinyurl.com/litelines-hf
And here is the documentation of litelines:
tinyurl.com/litelines
#PyDataParis
Featured in marimo newsletter π€©
marimo.io/blog/newslet...
Doing a slightly better documentation than just the README.md
alonsosilvaallende.github.io/litelines/ge...
Feeback?
To install it, just do `pip install litelines`.
Here are the docs:
github.com/alonsosilvaa...
Litelines is a lightweight wrapper of `outlines-core` by .txt
Want to visualize the response format constraints on the LLM when working in a Jupyter notebook?
Then you might be interested in my new project `litelines`.
Litelines lets you visualize the selected path by the LLM.
It supports a Pydantic schema as a response format, as well as regular expressions.
The recording of my presentation "Certainty-Guided Reasoning: A Dynamic Thinking Budget Approach" at the Laboratory for Information, Networking and Communication Sciences (LINCS) is now available:
www.youtube.com/watch?v=8a44...
Here is the Hugging Face space to play with it: huggingface.co/spaces/alons...
Here is a Google Colab with the same information as the post:
nbviewer.org/gist/alonsos...
New blog post: Constrain a language model not to use the letter 'e'
alonsosilvaallende.github.io/blog/posts/2...
In this post, I constrain a small language model (0.6B parameters) with a logits processor to accomplish something GPT-4o fails to do (see chatgpt.com/share/687908...).
TIL how to add notebook cells running on @pyodide.org to Quarto projects, such as my blog:
alonsosilvaallende.github.io/til/posts/20...
It's very easy to change the Pyodide version if needed. Thanks @coatless.bsky.social for this great Quarto extension
tfw u need neo4j to put together the polycule chart
New blog post: Understanding Logits Processors
alonsosilvaallende.github.io/blog/posts/2...
I start with a basic min length example, then force the model to check its answer, followed by making reasoning models stop thinking once they reach a thinking budget & finally force the model to think longer
New blog post: Understanding Structured Outputs
alonsosilvaallende.github.io/blog/posts/2...
This is the power behind structured ouputs libraries such as Instructor and Marvin.
I provide a basic example of extraction, a slightly more complex one, then classification, and finally SO in WebAssembly.
Where is that?
New blog post: Understanding Function Calling
I provide a basic example of FC, then a slightly more complex example by allowing an LM to use Python. I explain the conversational response as a tool trick. Finally, FC in the browser by using WebAssembly
alonsosilvaallende.github.io/blog/posts/2...
So I appear in the Celebration of 100 years of Bell Labs video with our LLM robots (a.k.a. IndustrialGPT) for less than a second :-D
www.youtube.com/watch?v=Fu_I...
New blog post: Understanding LLM Memory
alonsosilvaallende.github.io/blog/posts/2...
Using the Marimo extension for Quarto.
New post: Understanding Chat Templates
alonsosilvaallende.github.io/blog/posts/2...