In my opinion, the best way to do a grad-level project course is to use it as an opportunity to make progress on research on a related topic, especially if it aligns with your existing research agenda. I see the best outcome of the course as you getting as close to producing a publishable research artifact as possible, given the timeframe of the course. With that in mind, you will be expected to submit a 9-page research paper following the ICML 2027 style guide (template forthcoming) and give a presentation on your work. The ICML submission deadline is typically around the beginning of the calendar year, giving you a chance to turn your class paper into a real conference submission.
That said, we don’t require you to produce an ICML-tier publication in 11 weeks. The goal is for you to get research experience on a topic that you’re excited about which relates to the course. Expectations for the novelty, significance, and scale of the contribution and results of your paper will be scaled back dramatically relative to a full AI conference paper, and are more akin to a workshop paper. As examples of smaller-scale projects that would fit with the class, you could start with replicating an existing method, and apply it to a new experimental domain or dataset. You could try applying your favorite single-agent RL method in a multi-agent setting, and see if it needs any modifications to allow it to work.
Note that it is totally acceptable, and in fact ideal, if your normal research aligns with the class, and you can continue making progress on your research agenda and write up the results for the class project. Students are required to work in groups of 3-4. Groups of fewer than 3 or more than 4 students require instructor approval. Through these avenues, you may be able to tackle more challenging research problems with more novelty, such as developing a new algorithm or technique. We encourage you to pursue this if you think it’s possible!
Just like a real Call for Papers (CfP), here is a list of suggested topics appropriate for the class project:
If you would like to do a project on a topic you think is related that you don’t see listed here, please contact us.
Criteria Your paper will be evaluated similarly to how research papers are evaluated for conferences: on the novelty, significance, soundness of the experimental or theoretical results, writing/presentation, and coverage of the related work. However, the degree of novelty, significance, etc. is expected to be less than a full conference paper (more similar to a workshop paper).
For all project deliverables, only one member should submit on Gradescope on behalf of the entire group. Please list all group members in your submission. The same member should consistently be the one submitting for the group.
Proposal (5% of total grade, due October 28, 2026 at 11:59 PM)
Presentation (10% of total grade, in class on December 7 or 9, 2026)
Writeup (35% of total grade, due December 9, 2026 at 11:59 PM)
Please submit a 9-page paper structured like a typical research paper, following the ICML 2027 style guide (template forthcoming; the page limit applies only to the content, not the references or appendices). Suggested sections include the abstract, introduction, related work, optional technical preliminaries, methods, experiments, results, and conclusion/discussion. These are not a hard requirement; you may also have theoretical results you wish to include. Note also that this standard format can sometimes be tweaked effectively; see Safety Alignment Should Be Made More Than Just a Few Tokens Deep for an example.
At the end of your writeup, include a brief Statement of Contributions section that details the contributions made by each group member (for an example see p. 16 of this paper). This section does not count towards the page limit.
Create a github repository for any code related to your project, and include a link to the repo in your paper (if you are submitting the same paper to ICML, remember to anonymize or remove this link!). The repository should include all relevant code needed to reproduce the results. It should also come with a README file documenting what commands you ran.
Note that your submission should not be anonymized and should include group members’ names as authors.
Students are required to work in groups of 3-4 on the project. Groups of fewer than 3 or more than 4 students must receive special permission from the instructor. Every group must submit a 9-page paper, regardless of group size.
If you're looking to find teammates to work on your project idea or join someone else's team, use the project-matching spreadsheet.
Students working with a research lab can use their lab resources, if feasible. Otherwise, options include:
hamachi (GPU)Please approach the instructor in-case the available compute is a bottleneck for your projects.
Great news! The Allen School is generously providing our class with free LLM API access through a service they have set up called llmproxy. It is similar to OpenRouter, and compatible with both the Anthropic and OpenAI APIs. You will each be receiving an API key that will allow you to access the proxy with requests to different LLM models (see the examples below).
Here is a selection of the models that are available on the server. Note that the internal/external prefix indicates which ones run on premises at the Allen School (and are free to use) and which run via external providers (AWS or Azure) and cost money.
internal/Qwen3.6-35B-A3Bexternal/kimi-k3external/deepseek.v3.2external/zai.glm-5external/sonnet-5-5external/opus-5external/us.openai.gpt-5.6-solexternal/us.openai.gpt-5.6-lunaexternal/us.openai.gpt-5.6-terraEach student in the class will receive $75 in free credits to use this service. To check the prices for different external LLMs, see Amazon Bedrock pricing. To save credits, prioritize using the internal, free models.
The intention is for these credits to enable you to do your course project. For example, you might need this type of LLM API call for the method you are working on (e.g., using something like OpenEvolve, or an LLM-as-a-judge classifier as your reward model), or for some evals (e.g., IFEval). Please be careful not to waste credits if you need them to complete your project, since this one allocation is meant to last for the whole quarter. You should not use this service or this API key for work that falls outside the scope of this course.
Inference Request
curl -X POST "https://llmproxy.cs.washington.edu/v1/chat/completions" \
-H "Authorization: Bearer YOUR_API_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{
"model": "internal/Qwen3.6-35B-A3B",
"messages": [
{
"role": "user",
"content": "Write me a poem about post-training."
}
]
}'
List Available Models
curl -X GET "https://llmproxy.cs.washington.edu/v1/models" \
-H "Authorization: Bearer YOUR_API_KEY_HERE"
from openai import OpenAI
# Point the official OpenAI client to the Allen School proxy
client = OpenAI(
api_key="YOUR API KEY HERE",
base_url="https://llmproxy.cs.washington.edu/"
)
response = client.chat.completions.create(
model="internal/Qwen3.6-35B-A3B",
messages=[
{"role": "user", "content": "Explain LoRA in one sentence."}
]
)
print(response.choices[0].message.content)
For your paper, you may want to run experiments using multi-agent environments. For an informal list of such environments, please see this doc of possible multi-agent environments. If you have ideas for further environments or datasets, feel free to leave a comment suggesting them.