<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Yuan's Blog</title><link>https://liyuan.org/</link><description>Recent content on Yuan's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 10 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://liyuan.org/index.xml" rel="self" type="application/rss+xml"/><item><title>Financial RAG Agent Optimization:Methods, Cases, and Data</title><link>https://liyuan.org/posts/ai/rag-improvement-via-18-failures/</link><pubDate>Sun, 10 May 2026 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/rag-improvement-via-18-failures/</guid><description>This project details the refinement of an agentic RAG system for financial Q&amp;amp;A, boosting test accuracy from &lt;strong>0.871 to ~0.919&lt;/strong> by systematically diagnosing 18 failure cases. Rather than blind model tuning, the author prioritized a &amp;quot;diagnose-first&amp;quot; approach: resolving &amp;quot;judge-side&amp;quot; discrepancies with deterministic numeric prefiltering, then implementing structural improvements like query translation, anti-refusal checks, and a five-layer fix for superlative ambiguities. The results highlight that while prompt-based reflection is helpful, structural, schema-enforced changes offer superior reliability. Ultimately, the author demonstrates engineering pragmatism by consciously leaving eight failures unfixed—due to dataset noise or unfavorable ROI—distinguishing between &amp;quot;fixing everything&amp;quot; and strategic, production-oriented optimization.</description></item><item><title>Picking Evaluation Metrics for a RAG Agent — Notes from the Trenches</title><link>https://liyuan.org/posts/ai/rag-eval-metrics-selection/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/rag-eval-metrics-selection/</guid><description>This article outlines a pragmatic, tiered approach to evaluating Retrieval-Augmented Generation (RAG) agents, specifically within the context of complex financial document analysis (FinanceBench). The author argues that effective evaluation is not about maximizing the number of metrics, but about selecting signals that provide clear, actionable insights at different stages of the development lifecycle.</description></item><item><title>How to use Claude to generate higher-quality code</title><link>https://liyuan.org/posts/ai/how-to-use-claude-code-to-generate-higher-quality-code/</link><pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/how-to-use-claude-code-to-generate-higher-quality-code/</guid><description>The code-flow skill for Claude Code shifts AI development from trial-and-error to a disciplined Research → Plan → Implement pipeline. By enforcing rigorous process control, it ensures the AI deeply understands the codebase before writing a single line. Experiments show this methodology achieves a 7.0 Read:Write Ratio, reducing rework and cutting token costs by 74%. It eliminates messy incremental patches, delivering coordinated, high-quality changes. Use /code-flow to turn chaotic prompts into structured, professional-grade engineering.</description></item><item><title>A Deep Dive into AI Prompt Engineering</title><link>https://liyuan.org/posts/ai/prompt-engineering-deep-dive/</link><pubDate>Thu, 08 Jan 2026 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/prompt-engineering-deep-dive/</guid><description>Anthropic prompt engineering experts—Amanda Askell (alignment fine-tuning), Alex Albert (developer relations), David Hershey (applied AI), and Zack Witten (prompt engineering)—share the evolution of prompt engineering, practical insights, and how prompting may evolve as AI capabilities advance.</description></item><item><title>How to Use Different Prompt Techniques to Make LLMs More Reliable?</title><link>https://liyuan.org/posts/ai/prompt-engineering-guide/</link><pubDate>Mon, 05 Jan 2026 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/prompt-engineering-guide/</guid><description>How to make large language models smarter, more stable, and more reliable at completing complex tasks through different prompting techniques. Prompt Engineering improves results through better instruction design without changing model parameters. This article covers four perspectives: what Prompt techniques exist (capability boundaries), which scenarios each suits (when to use), pros/cons and costs (when not to use), and reusable Prompt templates (ready to use). Essentially an API documentation view of Prompt techniques. This content covers not just prompt writing tips, but the evolution from single Prompt expression to multi-step Prompt workflow orchestration to complete LLM application and system design patterns using Prompts as interfaces.</description></item><item><title>How to Hide Local Subtitles on macOS</title><link>https://liyuan.org/posts/projects/how-to-hide-local-subtitles-on-macos/</link><pubDate>Sat, 18 Oct 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/projects/how-to-hide-local-subtitles-on-macos/</guid><description>&lt;p>If you often watch videos with embedded or local subtitles on your Mac, you may have noticed that macOS automatically displays them—even when you don’t need them.&lt;/p>
&lt;p>Whether you’re editing a video, recording a demo, or simply prefer a clean viewing experience, here’s a simple and effective way to hide local subtitles system-wide using macOS’s built-in caption settings.&lt;/p>
&lt;h2 id="step-1-open-the-captions-settings">Step 1: Open the Captions Settings&lt;/h2>
&lt;ol>
&lt;li>Open System Settings.&lt;/li>
&lt;li>In the search bar at the top, type “Captions.”&lt;/li>
&lt;li>Click on Captions in the search results to open the caption customization panel.&lt;/li>
&lt;/ol>
&lt;h2 id="step-2-create-a-custom-caption-style">Step 2: Create a Custom Caption Style&lt;/h2>
&lt;ol>
&lt;li>Click the “+” button to create a new caption style.&lt;/li>
&lt;li>A configuration window will appear (see screenshot below).&lt;/li>
&lt;/ol>
&lt;p>Set the options as shown in the image:
&lt;img src="https://liyuan.org/posts/projects/how-to-hide-local-subtitles-on-macos/subtitles-setting.png" alt="">&lt;/p></description></item><item><title>How to Make a Liquid Glass Icon for Tauri Generated macOS App</title><link>https://liyuan.org/posts/projects/how-to--make-liquid-glass-icon-in-macos/</link><pubDate>Tue, 07 Oct 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/projects/how-to--make-liquid-glass-icon-in-macos/</guid><description>&lt;ol>
&lt;li>Design your icon by 1024x1024, WITHOUT round corners&lt;/li>
&lt;li>Use &lt;a href="https://developer.apple.com/icon-composer/">Icon Composer&lt;/a> to generate the Liquid Glass version. For details, see Apple's offical &lt;a href="https://www.youtube.com/watch?v=4usD1hP1nYY">YouTube video&lt;/a>&lt;/li>
&lt;li>Use Figma to create a 1024x1024 canvas, and set its background color to transparent&lt;/li>
&lt;li>Import the generated icon, resize it to 860x860, can place it in the center of the canvas&lt;/li>
&lt;li>Group these two layers and export it&lt;/li>
&lt;li>Place the exported icon into your Tauri project's &lt;code>src-tauri/icons&lt;/code>, and change its name to &lt;code>icon.png&lt;/code>&lt;/li>
&lt;li>Run &lt;code>pnpm tauri icon src-tauri/icons/icon.png&lt;/code>, and then WOW!&lt;/li>
&lt;/ol>
&lt;p>You may encounter icon cache issues, run the following script (generated by Claude Code) can solve the problem.&lt;/p></description></item><item><title>How to Develop a Local Video App with Tauri on macOS</title><link>https://liyuan.org/posts/projects/tauri-video/</link><pubDate>Tue, 08 Jul 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/projects/tauri-video/</guid><description>This article applies to scenarios where you develop a Tauri-based local video application on macOS. It highlights the fundamental difference between video resources and regular image/text assets in transmission mechanisms. Using the “data characteristics” of videos (such as Range requests) as the structural thread, it connects common issues and their solutions.</description></item><item><title>Tauri Video Not Playing? The Ultimate Solution for “Unsupported URL” on macOS</title><link>https://liyuan.org/posts/projects/tauri-video-fail/</link><pubDate>Tue, 08 Jul 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/projects/tauri-video-fail/</guid><description>How can you elegantly play local video files (especially .mp4, .mkv) in Tauri? Maybe you’ve tried convertFileSrc, fetch + blob, or even modified CSP—but still end up with a black screen or errors? This article systematically reviews why it fails, what has been tried, why those attempts don’t work, and the final working solution.</description></item><item><title>Road to GenAI Application Engineers</title><link>https://liyuan.org/posts/ai/ai-learning-materials/</link><pubDate>Wed, 02 Jul 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/ai-learning-materials/</guid><description>&lt;h2 id="ai-building-blocks">AI building blocks&lt;/h2>
&lt;ul>
&lt;li>Prompting Techniques&lt;/li>
&lt;li>RAG&lt;/li>
&lt;li>Agentic Frameworks&lt;/li>
&lt;li>Guardrails&lt;/li>
&lt;li>Evals&lt;/li>
&lt;li>Fine-Tuning&lt;/li>
&lt;li>Computer Use / Tool Use&lt;/li>
&lt;li>Asynchronous Programming&lt;/li>
&lt;li>MCP&lt;/li>
&lt;/ul>
&lt;h2 id="prompting-techniques--evals--computer-use--tool-use">Prompting Techniques + Evals + Computer Use / Tool Use&lt;/h2>
&lt;p>[Anthropic Courses]（https://github.com/anthropics/courses）&lt;/p>
&lt;h2 id="rag">RAG&lt;/h2>
&lt;p>&lt;a href="https://www.deeplearning.ai/short-courses/javascript-rag-web-apps-with-llamaindex/">JavaScript RAG Web Apps with LlamaIndex (DeepLearningAI Video Course&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://github.com/run-llama/llamacloud-demo/blob/main/examples/document_workflows/patient_case_summary/patient_case_summary.ipynb">Patient Case Summary Workflow (RAG Tutorial)&lt;/a>: for runing .ipynb file, using&lt;a href="https://colab.research.google.com/">Google Colab&lt;/a>&lt;/p>
&lt;h2 id="mcp">MCP&lt;/h2>
&lt;p>&lt;a href="https://www.deeplearning.ai/short-courses/mcp-build-rich-context-ai-apps-with-anthropic/">MCP: Build Rich-Context AI Apps with Anthropic&lt;/a>
&lt;a href="https://modelcontextprotocol.io/introduction">MCP (Anthropic Doc)&lt;/a>&lt;/p>
&lt;h2 id="agentic-frameworks">Agentic Frameworks&lt;/h2>
&lt;p>&lt;a href="https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/">AI Agents in LangGraph (DeepLearningAI Video Course)&lt;/a>
&lt;a href="https://www.deeplearning.ai/short-courses/event-driven-agentic-document-workflows/">Event-Driven Agentic Document Workflows (DeepLearningAI Video Course)&lt;/a>
&lt;a href="https://www.deeplearning.ai/short-courses/ai-agentic-design-patterns-with-autogen/">AI Agentic Design Patterns with AutoGen (DeepLearningAI Video Course)&lt;/a>&lt;/p></description></item><item><title>Troubleshooting Hugo Site Deployment on Vercel</title><link>https://liyuan.org/posts/projects/deploy-hugo-on-vercel/</link><pubDate>Tue, 24 Jun 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/projects/deploy-hugo-on-vercel/</guid><description>&lt;h2 id="issue-1---after-deployment-the-homepage-shows-an-rss-xml-page">Issue 1 - After Deployment, the Homepage Shows an RSS XML Page&lt;/h2>
&lt;p>After deploying following Vercel’s &lt;a href="https://vercel.com/guides/deploying-hugo-with-vercel">official guide&lt;/a>, the homepage displayed an RSS XML page.
The cause: &lt;strong>Vercel’s built-in Hugo version is too old.&lt;/strong>&lt;/p>
&lt;h3 id="-solution">✅ Solution&lt;/h3>
&lt;p>Add a &lt;code>vercel.json&lt;/code> file in your project’s root directory to specify the Hugo version, Go version, and build command (&lt;code>buildCommand&lt;/code>).
When Hugo is set as the &lt;strong>Framework Preset&lt;/strong> in Vercel, these configurations will be automatically detected.&lt;/p></description></item><item><title>Projects</title><link>https://liyuan.org/projects/</link><pubDate>Sun, 22 Jun 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/projects/</guid><description>&lt;ul>
&lt;li>&lt;a href="https://loud-mouth-promo.vercel.app/">English learning video software&lt;/a>: Turn entertainment into education. Contextual Learning. Learn what you love..&lt;/li>
&lt;li>&lt;a href="https://chromewebstore.google.com/detail/super-tomato/fdbhimjpbpbpcjdkilkcmfafdailanpn">A Pomodoro timer&lt;/a>: Super Tomato is a Pomodoro timer extension that helps you stay focused and manage your time effectively.&lt;/li>
&lt;/ul></description></item><item><title>Core Skills and Interview Standards for the Next Generation of GenAI Application Engineers — Andrew Ng</title><link>https://liyuan.org/posts/ai/genai-developer-skills-interview-tips/</link><pubDate>Wed, 11 Jun 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/genai-developer-skills-interview-tips/</guid><description>Andrew Ng points out that generative AI is giving rise to a new kind of developer — the GenAI Application Engineer. These engineers can skillfully leverage AI building blocks and coding assistants to rapidly create powerful applications. This article outlines their core skills, bonus attributes, and interview standards to help us understand the capability map of this emerging role.</description></item><item><title>Deep Dive into LLMs like ChatGPT</title><link>https://liyuan.org/posts/ai/deep-dive-into-llms-like-chatgpt/</link><pubDate>Sat, 31 May 2025 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/deep-dive-into-llms-like-chatgpt/</guid><description>This post explores how large language models like ChatGPT are built and improved. It covers pretraining, tokenization, neural network learning, post-training for assistant behavior, and reinforcement learning. Key challenges like hallucinations are addressed through context, tool use, and web search. It also explains RLHF and when it’s most effective—a clear guide to understanding the core mechanics behind today’s generative AI.</description></item><item><title>Impressions on Using AI Programming Tools</title><link>https://liyuan.org/posts/ai/ai-coding-assistants/</link><pubDate>Fri, 02 Aug 2024 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/ai/ai-coding-assistants/</guid><description>Exploring today’s mainstream AI programming tools — ChatGPT, Claude, Cursor, and Replit — and understanding their respective strengths and limitations.</description></item><item><title>Reflections on Language Learning</title><link>https://liyuan.org/posts/english-learning/on-language-learning/</link><pubDate>Sun, 23 Jun 2024 00:00:00 +0000</pubDate><guid>https://liyuan.org/posts/english-learning/on-language-learning/</guid><description>Insights and reflections after reaching a bottleneck stage in English learning.</description></item></channel></rss>