
Example: Asking questions about Oxen.aiβs Python Library
For this example, we will see how well an LLM can answer questions about developer docs. We will use the Oxen.ai Developer Docs as our context. This tutorial will show you how you can prompt an LLM with context, save the outputs, and build an interface to have a human review the output. Follow along with the example notebook by running it in your own Oxen.ai account.
Creating the Dataset
The dataset will consist of 10 questions about theRemoteRepo
Python class. For your use case, a small dataset is better than none, and you can always scale up. Even if it is only a few examples to start, this allows you to setup and kick off your data flywheel.

Using a Model
For this example, we will be usinggpt-4.1-nano
to see if OpenAIβs fast and cheap model can perform the operations we need.
To start, make a cell at the top of the notebook that allows the user to put in their own OpenAI API_KEY.

Building the Context
For updates to developer docs, it is best to assume the model does not yet know the latest information. To help the model, we can provide it with the latest docs as context.Running the Model
Now that we have our model, and our context, we can use it to answer all the questions.with mo.status.progress_bar(total=len(df)) as bar:
is a Marimo feature that allows you to display a progress bar in the notebook to help you visualize the progress of the loop. This is helpful when you have more than 10 examples and want to know how much longer the loop will take.


Saving the Results
Before we build our labeling tool, letβs save the results to Oxen.ai.remote_df
that we can use in our labeling tool.
Building a Custom Labeling Tool
Now that we have the results saved, we can build a simple labeling tool to label the results. Weβll need some state to keep track of the current index of the dataframe, and the current row.
remote_df.commit()
method.