Sprint Challenge
Sprint Challenge Overview
This sprint challenge will test your understanding of Large Language Models and your ability to implement, customize, and deploy LLM-powered applications. You'll create an LLM StoryBot that demonstrates your mastery of prompt engineering, model customization, and practical LLM implementation skills learned in Modules 3 and 4.
The challenge consists of four main parts:
- Choose an LLM Model: Select either an API-based model (like OpenAI's GPT) or implement a local open-source model.
- Implement a StoryBot: Design an LLM that acts as a brilliant storyteller, generating 1000+ word stories based on user input.
- StoryBot Testing: Evaluate your bot's performance and experiment with parameter adjustments to improve results.
- Story Submission: Generate at least three stories and submit your favorite for evaluation.
Challenge Setup
To get started with the Sprint Challenge, follow these steps:
- Access the Jupyter notebook using the link below.
- You can complete the assignment using any of these options:
- Local Jupyter Notebook environment
- Google Colab (make sure to Copy to your Google Drive)
- Local Python setup with virtual environment
- You may use any Python libraries that can be installed via pip, including the Python standard library.
Challenge Expectations
The Sprint Challenge is designed to test your mastery of the following key concepts from Modules 3 and 4:
- LLM Implementation: Understanding how to work with both API-based and local language models
- Prompt Engineering: Crafting effective prompts to guide AI model behavior and outputs
- Model Customization: Parameterizing and customizing LLM responses for specific use cases
- Context Management: Working within model context windows and managing input/output constraints
- LLM Evaluation: Assessing model performance and making parameter adjustments for improvement
What to Expect
In this sprint challenge, you'll apply your knowledge of Large Language Models to create a practical application. This challenge will test your ability to:
- Choose and implement either an API-based LLM (like OpenAI's GPT) or a local open-source model
- Design and implement a StoryBot class that generates compelling 1000+ word stories
- Apply prompt engineering techniques to create a "brilliant storyteller" persona
- Work within context window constraints while managing system prompts, user prompts, and outputs
- Test and evaluate your bot's performance, experimenting with parameter adjustments
- Generate multiple AI stories and select the best one for submission
- Understand the practical considerations of deploying LLM applications
- Demonstrate your mastery of both the technical and creative aspects of working with Large Language Models
The challenge focuses specifically on the LLM concepts from Modules 3 and 4, emphasizing practical implementation and creative application!
Submission
To submit your Sprint Challenge, you have several options:
- Google Colab: Submit the sharing link to your completed notebook
- GitHub Repository: Create a repository with your Jupyter notebook and submit the repository link
- Text File + Code: Upload your story.txt file along with your Python code in a GitHub repository
Your primary deliverable should be your favorite AI-generated story (1000+ words) that demonstrates your StoryBot's capabilities. Ensure all code runs successfully and outputs are visible before submitting.
Sprint Challenge Resources
LLM Implementation and APIs
- OpenAI API Reference
- Hugging Face Text Generation Models
- Ollama: Run LLMs Locally
- LangChain: Building Applications with LLMs
Prompt Engineering and Customization
- Prompt Engineering Guide
- OpenAI Prompt Engineering Best Practices
- Learn Prompting: Free Course
- Comprehensive Prompt Engineering Guide (GitHub)