IBM Β· IBM RAG and Agentic AI Professional Certificate
Develop Generative AI Applications: Get Started

Prompt engineering and LangChain fundamentals, culminating in a Flask generative-AI app built on IBM watsonx.ai models.
Completed 2025-10-12
π Part of the IBM RAG and Agentic AI Professional Certificate #
Author: Ahmad Tawil
Date Completed: October 12, 2025
Certificate: Coursera Verification Link β

π Course Overview #
This repository documents my complete work and labs for the IBM course βDevelop Generative AI Applications: Get Startedβ, offered through Coursera.
The course provides hands-on experience in Generative AI, Prompt Engineering, and LangChain frameworks, culminating in a Flask-based AI application powered by IBM watsonx.ai models.
π‘ Key Learning Outcomes #
- Understand Generative AI foundations, prompt engineering, and in-context learning
- Master LangChain components (LLMs, Prompts, Chains, Agents, LCEL)
- Build composable AI workflows using LCEL pipelines
- Develop and deploy a Flask Generative AI web app integrating LangChain + Watsonx models
- Compare LLMs (Llama 3, Granite) and implement structured JSON output parsing
π§© Course Modules #
Module 1 β Foundations of Generative AI and Prompt Engineering #
Explored the core principles of generative AI and how prompt engineering improves LLM performance.
Implemented LangChain Prompt Templates and practiced in-context learning (zero-shot, one-shot, few-shot).
Skills & Tools
- Prompt Engineering π§
- NLP Concepts (Tokenization, NER, POS)
- LangChain PromptTemplate
- Python + Jupyter Notebooks
Lab: In-Context Learning and Prompt Templates for Advanced AI
Module 2 β Introduction to LangChain in Generative AI Applications #
Learned the modular structure of LangChain β LLMs, Chat Models, Prompts, Output Parsers β and built sequential chains, memory, and agents.
Adopted the LangChain Expression Language (LCEL) for clear and composable AI pipelines.
Key Concepts
| Feature | Description |
|---|---|
| Chains | Sequential workflows where output β next input |
| Memory | Maintains context for multi-turn conversations |
| Agents | Dynamically choose tools/APIs to execute tasks |
| LCEL Syntax | Pipe operator (` |
Lab: Build Smarter AI Apps β Empower LLMs with LangChain
Module 3 β Build a Generative AI Application with LangChain #
Developed a full-stack Flask Generative AI application integrating IBM watsonx.ai models (Llama 3, Granite) with LangChain.
Tech Stack
| Category | Tools |
|---|---|
| AI Framework | LangChain + LangChain-IBM |
| Models | Meta Llama 3 / IBM Granite |
| Backend | Flask (API + UI) |
| Parsing | Pydantic + JsonOutputParser |
| Language | Python 3.11 |
| Frontend | HTML + Flask Templates |
Project Highlights
- Integrated LangChain chains into Flask backend
- Defined Pydantic schemas for validated JSON outputs
- Compared Llama 3 vs Granite in runtime and response style
- Produced structured LLM responses (summary, sentiment, reply)
Example Output
{
"summary": "Large Language Models (LLMs) are AI algorithms that process and generate human-like language.",
"sentiment": 100,
"response": "They are trained on vast amounts of text data to learn patterns and relationships in language."
}
Screenshot

π§ Course Architecture Summary #
User (UI)
β
βββ> Flask (app.py)
β receives user prompt + model
βββ> model.py β ChatWatsonx chain
β PromptTemplate + JsonOutputParser
βββ> Watsonx.ai Model (Llama3 / Granite)
β returns structured JSON
βββ> Flask renders output to UI
π Skills Demonstrated #
- Generative AI Concepts & Foundation Models
- Prompt Engineering & In-Context Learning
- LangChain Framework (Chains, Memory, Agents, LCEL)
- Flask Web App Development for AI Applications
- IBM Watsonx Model Integration (Llama 3, Granite)
- Structured Output Parsing with Pydantic & JSON
π Tools and Technologies #
Python 3.11 Β· LangChain Β· Flask Β· IBM Watsonx.ai Β· Pydantic Β· JsonOutputParser Β· LLMs (Llama 3, Granite) Β· HTML/CSS Β· VS Code Β· Jupyter Lab
π§© Future Enhancements #
- Add RAG (vector store integration) for contextual retrieval
- Extend JSON schema with tone/confidence fields
- Implement multi-turn memory and session storage
- Deploy to IBM Cloud or Vercel for public access
π Conclusion #
Successfully completed all three modules of IBMβs Develop Generative AI Applications: Get Started course.
This project demonstrates the full journey β from mastering prompt engineering to building a production-ready Flask Generative AI web app powered by LangChain and IBM Watsonx foundation models.
π§© Ready to move on to advanced RAG and Agentic AI development.
β Verified Certificate: Coursera.org/verify/X6ECLAMRH2YQ