[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"summary-build-production-rag-agent-bigquery-cloud-sql-summary":3,"summaries-facets-categories":663,"summary-related-build-production-rag-agent-bigquery-cloud-sql-summary":5069},{"id":4,"title":5,"ai":6,"body":13,"categories":638,"created_at":639,"date_modified":639,"description":640,"extension":641,"faq":639,"featured":642,"kicker_label":639,"meta":643,"navigation":644,"path":645,"published_at":646,"question":639,"scraped_at":647,"seo":648,"sitemap":649,"source_id":650,"source_name":651,"source_type":652,"source_url":653,"stem":654,"tags":655,"thumbnail_url":639,"tldr":660,"tweet":639,"unknown_tags":661,"__hash__":662},"summaries\u002Fsummaries\u002Fbuild-production-rag-agent-bigquery-cloud-sql-summary.md","Build Production RAG Agent: BigQuery + Cloud SQL",{"provider":7,"model":8,"input_tokens":9,"output_tokens":10,"processing_time_ms":11,"cost_usd":12},"openrouter","x-ai\u002Fgrok-4.1-fast",8079,2762,26239,0.00297415,{"type":14,"value":15,"toc":631},"minimark",[16,21,25,32,43,49,52,55,96,100,103,109,133,136,142,167,170,175,221,224,230,304,307,310,313,317,320,326,332,393,396,402,417,431,436,471,474,480,508,511,516,549,555,558,561,564,568,571,574,577,580,583,586,589,592,596,627],[17,18,20],"h2",{"id":19},"rag-fundamentals-solving-hallucinations-with-chunking-and-embeddings","RAG Fundamentals: Solving Hallucinations with Chunking and Embeddings",[22,23,24],"p",{},"Retrieval Augmented Generation (RAG) grounds LLMs in custom data to reduce hallucinations and incorporate specialized knowledge. The process: (1) chunk unstructured documents into meaningful blocks, (2) generate embeddings (numeric vectors capturing semantics), (3) retrieve nearest neighbors via similarity search (prefer cosine distance over Euclidean for direction over magnitude), (4) augment prompts with retrieved context for grounded generation.",[22,26,27,31],{},[28,29,30],"strong",{},"Why chunk?"," Embedding entire documents dilutes semantics; split into paragraphs\u002Fsentences for precise retrieval. Techniques include fixed-size, recursive (e.g., by periods), or content-aware (e.g., Document AI paragraphs). Here, recursive chunking splits on periods for simple, effective blocks.",[22,33,34,37,38,42],{},[28,35,36],{},"Embedding models:"," Use text-embedding-004 (768 dimensions) or newer Gemini multimodal for text\u002Fimages\u002Fvideo\u002Faudio. In BigQuery, ",[39,40,41],"code",{},"ML.GENERATE_EMBEDDING"," calls Vertex AI without loading models locally.",[22,44,45,48],{},[28,46,47],{},"Retrieval math:"," Embed query, compute cosine similarity: closer to 1 means higher semantic match. Top-K (e.g., 3) results ranked by distance.",[22,50,51],{},"Common mistake: Using Euclidean distance factors document length; cosine ignores magnitude for pure similarity.",[22,53,54],{},"Example query embedding:",[56,57,62],"pre",{"className":58,"code":59,"language":60,"meta":61,"style":61},"language-sql shiki shiki-themes github-light github-dark","SELECT\n  ML.GENERATE_EMBEDDING(\n    MODEL `projects\u002FYOUR_PROJECT\u002Flocations\u002FYOUR_REGION\u002Fmodels\u002Ftext-embedding-004`,\n    STRUCT('What are tactics against a foe that causes paralysis?' AS content)\n  ) AS query_embedding;\n","sql","",[39,63,64,72,78,84,90],{"__ignoreMap":61},[65,66,69],"span",{"class":67,"line":68},"line",1,[65,70,71],{},"SELECT\n",[65,73,75],{"class":67,"line":74},2,[65,76,77],{},"  ML.GENERATE_EMBEDDING(\n",[65,79,81],{"class":67,"line":80},3,[65,82,83],{},"    MODEL `projects\u002FYOUR_PROJECT\u002Flocations\u002FYOUR_REGION\u002Fmodels\u002Ftext-embedding-004`,\n",[65,85,87],{"class":67,"line":86},4,[65,88,89],{},"    STRUCT('What are tactics against a foe that causes paralysis?' AS content)\n",[65,91,93],{"class":67,"line":92},5,[65,94,95],{},"  ) AS query_embedding;\n",[17,97,99],{"id":98},"bigquery-rag-pipeline-for-olap-workloads","BigQuery RAG Pipeline for OLAP Workloads",[22,101,102],{},"BigQuery excels at analytical processing (OLAP) on large unstructured data: ETL to embeddings, then SQL-based semantic search. Assumes prior setup (e.g., GCS connection from lab Day 1).",[22,104,105,108],{},[28,106,107],{},"Step 1: Recursive Chunking","\nQuery chunks input table (e.g., raw text docs):",[56,110,112],{"className":58,"code":111,"language":60,"meta":61,"style":61},"CREATE OR REPLACE TABLE `your-project.your-dataset.chunks` AS\nSELECT\n  id,\n  REGEXP_EXTRACT_ALL(content, r'[^.!?]+[.!?]+') AS chunks;\n",[39,113,114,119,123,128],{"__ignoreMap":61},[65,115,116],{"class":67,"line":68},[65,117,118],{},"CREATE OR REPLACE TABLE `your-project.your-dataset.chunks` AS\n",[65,120,121],{"class":67,"line":74},[65,122,71],{},[65,124,125],{"class":67,"line":80},[65,126,127],{},"  id,\n",[65,129,130],{"class":67,"line":86},[65,131,132],{},"  REGEXP_EXTRACT_ALL(content, r'[^.!?]+[.!?]+') AS chunks;\n",[22,134,135],{},"Outputs array of sentence-level chunks preserving basic context.",[22,137,138,141],{},[28,139,140],{},"Step 2: Setup Vertex AI Connection","\nEcho GCS connection, then create embedding model connection:",[56,143,145],{"className":58,"code":144,"language":60,"meta":61,"style":61},"CREATE OR REPLACE MODEL `your-project.your-dataset.embedding_model`\nOPTIONS(model_type='VERTEX_AI',\n        model_name='text-embedding-004',\n        CONNECTION_ID='projects\u002FYOUR_PROJECT\u002Flocations\u002FYOUR_REGION\u002Fconnections\u002FYOUR_CONNECTION');\n",[39,146,147,152,157,162],{"__ignoreMap":61},[65,148,149],{"class":67,"line":68},[65,150,151],{},"CREATE OR REPLACE MODEL `your-project.your-dataset.embedding_model`\n",[65,153,154],{"class":67,"line":74},[65,155,156],{},"OPTIONS(model_type='VERTEX_AI',\n",[65,158,159],{"class":67,"line":80},[65,160,161],{},"        model_name='text-embedding-004',\n",[65,163,164],{"class":67,"line":86},[65,165,166],{},"        CONNECTION_ID='projects\u002FYOUR_PROJECT\u002Flocations\u002FYOUR_REGION\u002Fconnections\u002FYOUR_CONNECTION');\n",[22,168,169],{},"Replace placeholders; validates project\u002Fregion.",[22,171,172],{},[28,173,174],{},"Step 3: Generate Embeddings",[56,176,178],{"className":58,"code":177,"language":60,"meta":61,"style":61},"CREATE OR REPLACE TABLE `your-project.your-dataset.embeddings` AS\nSELECT\n  id,\n  chunk,\n  ml_generate_embedding_result AS embedding\nFROM ML.GENERATE_EMBEDDING(\n  MODEL `your-project.your-dataset.embedding_model`,\n  (SELECT * FROM `your-project.your-dataset.chunks`));\n",[39,179,180,185,189,193,198,203,209,215],{"__ignoreMap":61},[65,181,182],{"class":67,"line":68},[65,183,184],{},"CREATE OR REPLACE TABLE `your-project.your-dataset.embeddings` AS\n",[65,186,187],{"class":67,"line":74},[65,188,71],{},[65,190,191],{"class":67,"line":80},[65,192,127],{},[65,194,195],{"class":67,"line":86},[65,196,197],{},"  chunk,\n",[65,199,200],{"class":67,"line":92},[65,201,202],{},"  ml_generate_embedding_result AS embedding\n",[65,204,206],{"class":67,"line":205},6,[65,207,208],{},"FROM ML.GENERATE_EMBEDDING(\n",[65,210,212],{"class":67,"line":211},7,[65,213,214],{},"  MODEL `your-project.your-dataset.embedding_model`,\n",[65,216,218],{"class":67,"line":217},8,[65,219,220],{},"  (SELECT * FROM `your-project.your-dataset.chunks`));\n",[22,222,223],{},"Parallel API calls; expect latency but scales to massive datasets. Result: 768-dim vectors per chunk.",[22,225,226,229],{},[28,227,228],{},"Step 4: Semantic Search","\nEmbed query, join on cosine similarity, LIMIT top-K:",[56,231,233],{"className":58,"code":232,"language":60,"meta":61,"style":61},"WITH query_embedding AS (\n  SELECT\n    ML.GENERATE_EMBEDDING(\n      MODEL `your-project.your-dataset.embedding_model`,\n      STRUCT('What are tactics against a foe that causes paralysis?' AS content)\n    ) AS embedding\n)\nSELECT\n  chunks.chunk,\n  COSINE_DISTANCE(query_embedding.embedding, embeddings.embedding) AS distance\nFROM query_embedding, `your-project.your-dataset.embeddings` AS embeddings\nORDER BY distance DESC\nLIMIT 3;\n",[39,234,235,240,245,250,255,260,265,270,274,280,286,292,298],{"__ignoreMap":61},[65,236,237],{"class":67,"line":68},[65,238,239],{},"WITH query_embedding AS (\n",[65,241,242],{"class":67,"line":74},[65,243,244],{},"  SELECT\n",[65,246,247],{"class":67,"line":80},[65,248,249],{},"    ML.GENERATE_EMBEDDING(\n",[65,251,252],{"class":67,"line":86},[65,253,254],{},"      MODEL `your-project.your-dataset.embedding_model`,\n",[65,256,257],{"class":67,"line":92},[65,258,259],{},"      STRUCT('What are tactics against a foe that causes paralysis?' AS content)\n",[65,261,262],{"class":67,"line":205},[65,263,264],{},"    ) AS embedding\n",[65,266,267],{"class":67,"line":211},[65,268,269],{},")\n",[65,271,272],{"class":67,"line":217},[65,273,71],{},[65,275,277],{"class":67,"line":276},9,[65,278,279],{},"  chunks.chunk,\n",[65,281,283],{"class":67,"line":282},10,[65,284,285],{},"  COSINE_DISTANCE(query_embedding.embedding, embeddings.embedding) AS distance\n",[65,287,289],{"class":67,"line":288},11,[65,290,291],{},"FROM query_embedding, `your-project.your-dataset.embeddings` AS embeddings\n",[65,293,295],{"class":67,"line":294},12,[65,296,297],{},"ORDER BY distance DESC\n",[65,299,301],{"class":67,"line":300},13,[65,302,303],{},"LIMIT 3;\n",[22,305,306],{},"Top result matches query semantically (e.g., retrieves 'paralyzing aura' chunk). Ideal for insights beyond SQL, like semantic Q&A on docs.",[22,308,309],{},"Trade-off: BigQuery suits batch analytics (seconds OK); not real-time.",[22,311,312],{},"Quality check: Inspect execution graph for parallelism; distances near 1 indicate strong matches.",[17,314,316],{"id":315},"cloud-sql-rag-for-real-time-oltp-production","Cloud SQL RAG for Real-Time OLTP Production",[22,318,319],{},"Shift to Cloud SQL (PostgreSQL) for transactional workloads (OLTP): sub-second latency for customer-facing agents. Uses pgvector for vector storage\u002Findexing.",[22,321,322,325],{},[28,323,324],{},"Prerequisites:"," Service account with 'AI Platform User' role for Vertex AI calls.",[22,327,328,331],{},[28,329,330],{},"Step 1: Instance & IAM Setup","\nCloud Shell:",[56,333,337],{"className":334,"code":335,"language":336,"meta":61,"style":61},"language-bash shiki shiki-themes github-light github-dark","gcloud sql instances create rag-agent-db --database-version=POSTGRES_15 --tier=db-g1-small --region=YOUR_REGION\ngcloud projects add-iam-policy-binding YOUR_PROJECT --member=\"serviceAccount:RAG_SA@YOUR_PROJECT.iam.gserviceaccount.com\" --role=\"roles\u002Faiplatform.user\"\n","bash",[39,338,339,368],{"__ignoreMap":61},[65,340,341,345,349,352,355,358,362,365],{"class":67,"line":68},[65,342,344],{"class":343},"sScJk","gcloud",[65,346,348],{"class":347},"sZZnC"," sql",[65,350,351],{"class":347}," instances",[65,353,354],{"class":347}," create",[65,356,357],{"class":347}," rag-agent-db",[65,359,361],{"class":360},"sj4cs"," --database-version=POSTGRES_15",[65,363,364],{"class":360}," --tier=db-g1-small",[65,366,367],{"class":360}," --region=YOUR_REGION\n",[65,369,370,372,375,378,381,384,387,390],{"class":67,"line":74},[65,371,344],{"class":343},[65,373,374],{"class":347}," projects",[65,376,377],{"class":347}," add-iam-policy-binding",[65,379,380],{"class":347}," YOUR_PROJECT",[65,382,383],{"class":360}," --member=",[65,385,386],{"class":347},"\"serviceAccount:RAG_SA@YOUR_PROJECT.iam.gserviceaccount.com\"",[65,388,389],{"class":360}," --role=",[65,391,392],{"class":347},"\"roles\u002Faiplatform.user\"\n",[22,394,395],{},"Creates low-latency instance; binds IAM for Gemini access.",[22,397,398,401],{},[28,399,400],{},"Step 2: Enable Extensions in SQL Studio","\nConnect as postgres user, run:",[56,403,405],{"className":58,"code":404,"language":60,"meta":61,"style":61},"CREATE EXTENSION IF NOT EXISTS vector;\nCREATE EXTENSION IF NOT EXISTS google_ml_integration;\n",[39,406,407,412],{"__ignoreMap":61},[65,408,409],{"class":67,"line":68},[65,410,411],{},"CREATE EXTENSION IF NOT EXISTS vector;\n",[65,413,414],{"class":67,"line":74},[65,415,416],{},"CREATE EXTENSION IF NOT EXISTS google_ml_integration;\n",[22,418,419,422,423,426,427,430],{},[39,420,421],{},"vector"," adds vector type\u002Findexes (HNSW for ANN search); ",[39,424,425],{},"google_ml_integration"," enables ",[39,428,429],{},"ml_generate_embedding"," in SQL.",[22,432,433],{},[28,434,435],{},"Step 3: Create Embeddings Table",[56,437,439],{"className":58,"code":438,"language":60,"meta":61,"style":61},"CREATE TABLE embeddings (\n  id SERIAL PRIMARY KEY,\n  content TEXT,\n  embedding VECTOR(768)\n);\nCREATE INDEX ON embeddings USING hnsw (embedding vector_cosine_ops);\n",[39,440,441,446,451,456,461,466],{"__ignoreMap":61},[65,442,443],{"class":67,"line":68},[65,444,445],{},"CREATE TABLE embeddings (\n",[65,447,448],{"class":67,"line":74},[65,449,450],{},"  id SERIAL PRIMARY KEY,\n",[65,452,453],{"class":67,"line":80},[65,454,455],{},"  content TEXT,\n",[65,457,458],{"class":67,"line":86},[65,459,460],{},"  embedding VECTOR(768)\n",[65,462,463],{"class":67,"line":92},[65,464,465],{},");\n",[65,467,468],{"class":67,"line":205},[65,469,470],{},"CREATE INDEX ON embeddings USING hnsw (embedding vector_cosine_ops);\n",[22,472,473],{},"HNSW index accelerates nearest-neighbor search.",[22,475,476,479],{},[28,477,478],{},"Step 4: Ingest & Embed Data","\nInsert chunks, generate embeddings:",[56,481,483],{"className":58,"code":482,"language":60,"meta":61,"style":61},"INSERT INTO embeddings (content, embedding)\nSELECT\n  chunk,\n  (ml_generate_embedding('text-embedding-004', chunk)).embedding\nFROM unnest(ARRAY['chunk1', 'chunk2']::TEXT[]) AS chunk;\n",[39,484,485,490,494,498,503],{"__ignoreMap":61},[65,486,487],{"class":67,"line":68},[65,488,489],{},"INSERT INTO embeddings (content, embedding)\n",[65,491,492],{"class":67,"line":74},[65,493,71],{},[65,495,496],{"class":67,"line":80},[65,497,197],{},[65,499,500],{"class":67,"line":86},[65,501,502],{},"  (ml_generate_embedding('text-embedding-004', chunk)).embedding\n",[65,504,505],{"class":67,"line":92},[65,506,507],{},"FROM unnest(ARRAY['chunk1', 'chunk2']::TEXT[]) AS chunk;\n",[22,509,510],{},"Real-time: Embed on-insert or batch-load.",[22,512,513],{},[28,514,515],{},"Step 5: Production Retrieval",[56,517,519],{"className":58,"code":518,"language":60,"meta":61,"style":61},"SELECT\n  content,\n  embedding \u003C=> ml_generate_embedding('text-embedding-004', 'query') AS distance\nFROM embeddings\nORDER BY distance\nLIMIT 3;\n",[39,520,521,525,530,535,540,545],{"__ignoreMap":61},[65,522,523],{"class":67,"line":68},[65,524,71],{},[65,526,527],{"class":67,"line":74},[65,528,529],{},"  content,\n",[65,531,532],{"class":67,"line":80},[65,533,534],{},"  embedding \u003C=> ml_generate_embedding('text-embedding-004', 'query') AS distance\n",[65,536,537],{"class":67,"line":86},[65,538,539],{},"FROM embeddings\n",[65,541,542],{"class":67,"line":92},[65,543,544],{},"ORDER BY distance\n",[65,546,547],{"class":67,"line":205},[65,548,303],{},[22,550,551,554],{},[39,552,553],{},"\u003C=>"," is pgvector cosine distance; indexes ensure \u003C100ms queries.",[22,556,557],{},"Integrate into agent: Retrieve → augment Gemini prompt → generate. Scales to production (e.g., chatbots).",[22,559,560],{},"Common pitfalls: Forget IAM\u002Fservice account (blocks Vertex calls); no indexes (slow scans); chunk too large (dilutes semantics).",[22,562,563],{},"Before\u002Fafter: Raw LLM hallucinates on unseen data (e.g., latest Pixel); RAG pulls from DB for accurate, fresh responses.",[17,565,567],{"id":566},"agent-assembly-and-scaling-principles","Agent Assembly and Scaling Principles",[22,569,570],{},"Full agent: Query → embed → retrieve top-K → stuff into Gemini prompt (e.g., Vertex AI SDK). BigQuery for ETL\u002Findexing builds; Cloud SQL serves live.",[22,572,573],{},"Practice: Load game lore docs (e.g., monsters), query tactics—extends to legal\u002Fcontract search.",[22,575,576],{},"Assumed level: Google Cloud basics (Qwiklabs credits); SQL comfort. Fits after ETL lab; before agent orchestration.",[22,578,579],{},"Trade-offs: BigQuery cheap for batch ($\u002FTB scanned); Cloud SQL $\u002Fquery but real-time. Monitor quotas (embeddings API).",[22,581,582],{},"\"Retrieval augmented generation basically uh my understanding is it's trying to solve the hallucination of AI because uh AI is not always give you the accurate result doesn't necessarily have the specialized um knowledge.\"",[22,584,585],{},"\"You want to make sure that you're encoding the document in meaningful chunks so that when you do the retrieval part essentially you're retrieving um aspects of the document that most directly aligns with that particular question.\"",[22,587,588],{},"\"We always recommend something like cosine distance because it's more of a matter of like the similar similarity rather than just like the magnitude.\"",[22,590,591],{},"\"BigQuery is meant more for OLAP workload... whereas... cloud SQL that's meant more for real time low latency transactional workloads.\"",[17,593,595],{"id":594},"key-takeaways","Key Takeaways",[597,598,599,603,609,612,615,618,621,624],"ul",{},[600,601,602],"li",{},"Chunk recursively (e.g., by sentences) before embedding to preserve semantics; avoid full-doc embeds.",[600,604,605,606,608],{},"Use ",[39,607,41],{}," in BigQuery\u002FCloud SQL for managed Vertex AI access—no local models.",[600,610,611],{},"Cosine distance > Euclidean for retrieval; index with HNSW in pgvector for speed.",[600,613,614],{},"BigQuery for batch OLAP (analytics); Cloud SQL + extensions for OLTP production agents.",[600,616,617],{},"Always setup connections\u002Fservice accounts first; test with top-3 similarity queries.",[600,619,620],{},"Augment prompts with retrieved chunks for grounded LLM outputs.",[600,622,623],{},"Scale: Parallel in BQ; index in SQL for \u003C100ms latency.",[600,625,626],{},"Validate: Check distances (near 1 = good match); execution graphs for efficiency.",[628,629,630],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":61,"searchDepth":74,"depth":74,"links":632},[633,634,635,636,637],{"id":19,"depth":74,"text":20},{"id":98,"depth":74,"text":99},{"id":315,"depth":74,"text":316},{"id":566,"depth":74,"text":567},{"id":594,"depth":74,"text":595},[],null,"GCP credit → https:\u002F\u002Fgoo.gle\u002Fhandson-ep2-lab2\nCodelab & source code → https:\u002F\u002Fgoo.gle\u002Fscholar\nTry Google ADK → https:\u002F\u002Fgoo.gle\u002F4bPEHej\n\nIn this episode, Ayo and Annie go from structured data to a fully deployed, data-aware RAG agent, and we cover a LOT of ground. Starting where they left off from last episode (BigQuery + BQML.GENERATE_TEXT), the duo now wire up the full backend for an AI agent: a vector database, an embedding pipeline, a RAG retrieval system, and a production ready Cloud Run deployment. \n\n🛠️ *What we build:*\n* Cloud SQL for PostgreSQL with pgvector for semantic search \n* A containerized Apache Beam pipeline on Dataflow to batch-process text and generate Gemini embeddings \n* A RAG retrieval layer that lets the agent query vectorized knowledge \n* An ADK based agent that answers questions using that knowledge \n* A Cloud Run deployment with proper security and scalability settings \n\nThis is hands-on, infrastructure-meets AI content. you'll leave with a real, working pattern you can adapt for your own projects. \n\nChapters:\n0:00 - Intro\n1:41 - (RAG) Retrieval Augmented Generation and chunking\n4:40 - Data project overview\n4:52 - Similarity search\n6:40 - RAG in BigQuery\n11:56 - [BQML] ML Generate in Big Query\n19:46 - OLAP & OLTP\n24:21 - AI in CloudSQL \n28:38 - Index using HNSW\n31:29 - Scaling with data pipeline\n36:46 - Apache Beam\n53:02 - RAG agent With CloudSQL\n1:09:52 - Flight the BOSS with A2A\n\nMore resources:\nAI in CloudSQL →  https:\u002F\u002Fgoo.gle\u002F4uRlm5v\nApache Beam → https:\u002F\u002Fgoo.gle\u002F3O6OJzY\nADK Sample → https:\u002F\u002Fgoo.gle\u002F4rQKWVn\n\nWatch more Hand on AI → https:\u002F\u002Fgoo.gle\u002FHowToWithGemini \n🔔 Subscribe to Google Cloud Tech → https:\u002F\u002Fgoo.gle\u002FGoogleCloudTech\n\n#Gemini #GoogleCloud\n\nSpeakers: Ayo Adedeji, Annie Wang\nProducts Mentioned: Agent Development Kit, Dataflow","md",false,{},true,"\u002Fsummaries\u002Fbuild-production-rag-agent-bigquery-cloud-sql-summary","2026-03-28 19:00:00","2026-04-03 21:23:41",{"title":5,"description":640},{"loc":645},"cef9edeb79766490","Google Cloud Tech","video","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Ni1P8TITtE8","summaries\u002Fbuild-production-rag-agent-bigquery-cloud-sql-summary",[656,657,658,659],"llm","agents","ai-tools","automation","Hands-on guide to implement RAG pipelines in BigQuery for analytics and Cloud SQL (with pgvector) for real-time low-latency queries, using Gemini embeddings and ML.GENERATE.",[],"gLxbPrJMzPHCOJFHK_N16lFUjLzLznX2HMuiSfT4SQA",[664,667,669,672,674,677,680,683,686,688,690,692,694,696,698,700,703,705,707,709,711,713,715,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,750,752,754,756,758,760,763,765,767,769,771,773,775,777,779,781,783,785,787,789,791,793,795,797,799,801,803,805,807,809,811,813,815,817,819,821,823,825,827,829,831,833,835,837,839,841,843,845,847,849,851,853,855,857,859,861,863,865,867,869,871,873,875,877,879,881,883,885,887,889,891,893,895,897,899,901,903,905,907,909,911,913,915,917,919,921,923,925,927,929,931,933,935,937,939,941,943,945,947,949,951,953,955,957,959,961,963,965,967,969,971,973,975,977,979,981,983,985,987,989,991,993,995,997,999,1001,1003,1005,1007,1009,1011,1013,1015,1017,1019,1021,1023,1025,1028,1030,1032,1034,1036,1038,1040,1042,1044,1046,1048,1050,1052,1054,1056,1058,1060,1062,1064,1066,1068,1070,1072,1074,1076,1078,1080,1082,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1106,1108,1110,1112,1115,1117,1119,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1333,1335,1337,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,1367,1369,1371,1373,1375,1377,1379,1381,1383,1385,1387,1389,1391,1393,1395,1397,1399,1401,1403,1405,1407,1409,1411,1413,1415,1417,1419,1421,1423,1425,1427,1429,1431,1433,1435,1437,1439,1441,1443,1445,1447,1449,1451,1453,1455,1457,1459,1461,1463,1465,1467,1469,1471,1473,1475,1477,1479,1481,1483,1485,1487,1489,1491,1493,1495,1497,1499,1501,1503,1505,1507,1509,1511,1513,1515,1517,1519,1521,1523,1525,1527,1529,1531,1533,1535,1537,1539,1541,1543,1545,1547,1549,1551,1553,1555,1557,1559,1561,1563,1565,1567,1569,1571,1573,1575,1577,1579,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603,1605,1607,1609,1611,1613,1615,1617,1619,1621,1623,1625,1627,1629,1631,1633,1635,1637,1639,1641,1643,1645,1647,1649,1651,1653,1655,1657,1659,1661,1663,1665,1667,1669,1671,1673,1675,1677,1679,1681,1683,1685,1687,1689,1691,1693,1695,1697,1699,1701,1703,1705,1707,1709,1711,1713,1715,1717,1719,1721,1723,1725,1727,1729,1731,1733,1735,1737,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769,1771,1773,1775,1777,1779,1781,1783,1785,1787,1789,1791,1793,1795,1797,1799,1801,1803,1805,1807,1809,1811,1813,1815,1817,1819,1821,1823,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1847,1849,1851,1853,1855,1857,1859,1861,1863,1865,1867,1869,1871,1873,1875,1877,1879,1881,1883,1885,1887,1889,1891,1893,1895,1897,1899,1901,1903,1905,1907,1909,1911,1913,1915,1917,1919,1921,1923,1925,1927,1929,1931,1933,1935,1937,1939,1941,1943,1945,1947,1949,1951,1953,1955,1957,1959,1961,1963,1965,1967,1969,1971,1973,1975,1977,1979,1981,1983,1985,1987,1989,1991,1993,1995,1997,1999,2001,2003,2005,2007,2009,2011,2013,2015,2017,2019,2021,2023,2025,2027,2029,2031,2033,2035,2037,2039,2041,2043,2045,2047,2049,2051,2053,2055,2057,2059,2061,2063,2065,2067,2069,2071,2073,2075,2077,2079,2081,2083,2085,2087,2089,2091,2093,2095,2097,2099,2101,2103,2105,2107,2109,2111,2113,2115,2117,2119,2121,2123,2125,2127,2129,2131,2133,2135,2137,2139,2141,2143,2145,2147,2149,2151,2153,2155,2157,2159,2161,2163,2165,2167,2169,2171,2173,2175,2177,2179,2181,2183,2185,2187,2189,2191,2193,2195,2197,2199,2201,2203,2205,2207,2209,2211,2213,2215,2217,2219,2221,2223,2225,2227,2229,2231,2233,2235,2237,2239,2241,2243,2245,2247,2249,2251,2253,2255,2257,2259,2261,2263,2265,2267,2269,2271,2273,2275,2277,2279,2281,2283,2285,2287,2289,2291,2293,2295,2297,2299,2301,2303,2305,2307,2309,2311,2313,2315,2317,2319,2321,2323,2325,2327,2329,2331,2333,2335,2337,2339,2341,2343,2345,2347,2349,2351,2353,2355,2357,2359,2361,2363,2365,2367,2369,2371,2373,2375,2377,2379,2381,2383,2385,2387,2389,2391,2393,2395,2397,2399,2401,2403,2405,2407,2409,2411,2413,2415,2417,2419,2421,2423,2425,2427,2429,2431,2433,2435,2437,2439,2441,2443,2445,2447,2449,2451,2453,2455,2457,2459,2461,2463,2465,2467,2469,2471,2473,2475,2477,2479,2481,2483,2485,2487,2489,2491,2493,2495,2497,2499,2501,2503,2505,2507,2509,2511,2513,2515,2517,2519,2521,2523,2525,2527,2529,2531,2533,2535,2537,2539,2541,2543,2545,2547,2549,2551,2553,2555,2557,2559,2561,2563,2565,2567,2569,2571,2573,2575,2577,2579,2581,2583,2585,2587,2589,2591,2593,2595,2597,2599,2601,2603,2605,2607,2609,2611,2613,2615,2617,2619,2621,2623,2625,2627,2629,2631,2633,2635,2637,2639,2641,2643,2645,2647,2649,2651,2653,2655,2657,2659,2661,2663,2665,2667,2669,2671,2673,2675,2677,2679,2681,2683,2685,2687,2689,2691,2693,2695,2697,2699,2701,2703,2705,2707,2709,2711,2713,2715,2717,2719,2721,2723,2725,2727,2729,2731,2733,2735,2737,2739,2741,2743,2745,2747,2749,2751,2753,2755,2757,2759,2761,2763,2765,2767,2769,2771,2773,2775,2777,2779,2781,2783,2785,2787,2789,2791,2793,2795,2797,2799,2801,2803,2805,2807,2809,2811,2813,2815,2817,2819,2821,2823,2825,2827,2829,2831,2833,2835,2837,2839,2841,2843,2845,2847,2849,2851,2853,2855,2857,2859,2861,2863,2865,2867,2869,2871,2873,2875,2877,2879,2881,2883,2885,2887,2889,2891,2893,2895,2897,2899,2901,2903,2905,2907,2909,2911,2913,2915,2917,2919,2921,2923,2925,2927,2929,2931,2933,2935,2937,2939,2941,2943,2945,2947,2949,2951,2953,2955,2957,2959,2961,2963,2965,2967,2969,2971,2973,2975,2977,2979,2981,2983,2985,2987,2989,2991,2993,2995,2997,2999,3001,3003,3005,3007,3009,3011,3013,3015,3017,3019,3021,3023,3025,3027,3029,3031,3033,3035,3037,3039,3041,3043,3045,3047,3049,3051,3053,3055,3057,3059,3061,3063,3065,3067,3069,3071,3073,3075,3077,3079,3081,3083,3085,3087,3089,3091,3093,3095,3097,3099,3101,3103,3105,3107,3109,3111,3113,3115,3117,3119,3121,3123,3125,3127,3129,3131,3133,3135,3137,3139,3141,3143,3145,3147,3149,3151,3153,3155,3157,3159,3161,3163,3165,3167,3169,3171,3173,3175,3177,3179,3181,3183,3185,3187,3189,3191,3193,3195,3197,3199,3201,3203,3205,3207,3209,3211,3213,3215,3217,3219,3221,3223,3225,3227,3229,3231,3233,3235,3237,3239,3241,3243,3245,3247,3249,3251,3253,3255,3257,3259,3261,3263,3265,3267,3269,3271,3273,3275,3277,3279,3281,3283,3285,3287,3289,3291,3293,3295,3297,3299,3301,3303,3305,3307,3309,3311,3313,3315,3317,3319,3321,3323,3325,3327,3329,3331,3333,3335,3337,3339,3341,3343,3345,3347,3349,3351,3353,3355,3357,3359,3361,3363,3365,3367,3369,3371,3373,3375,3377,3379,3381,3383,3385,3387,3389,3391,3393,3395,3397,3399,3401,3403,3405,3407,3409,3411,3413,3415,3417,3419,3421,3423,3425,3427,3429,3431,3433,3435,3437,3439,3441,3443,3445,3447,3449,3451,3453,3455,3457,3459,3461,3463,3465,3467,3469,3471,3473,3475,3477,3479,3481,3483,3485,3487,3489,3491,3493,3495,3497,3499,3501,3503,3505,3507,3509,3511,3513,3515,3517,3519,3521,3523,3525,3527,3529,3531,3533,3535,3537,3539,3541,3543,3545,3547,3549,3551,3553,3555,3557,3559,3561,3563,3565,3567,3569,3571,3573,3575,3577,3579,3581,3583,3585,3587,3589,3591,3593,3595,3597,3599,3601,3603,3605,3607,3609,3611,3613,3615,3617,3619,3621,3623,3625,3627,3629,3631,3633,3635,3637,3639,3641,3643,3645,3647,3649,3651,3653,3655,3657,3659,3661,3663,3665,3667,3669,3671,3673,3675,3677,3679,3681,3683,3685,3687,3689,3691,3693,3695,3697,3699,3701,3703,3705,3707,3709,3711,3713,3715,3717,3719,3721,3723,3725,3727,3729,3731,3733,3735,3737,3739,3741,3743,3745,3747,3749,3751,3753,3755,3757,3759,3761,3763,3765,3767,3769,3771,3773,3775,3777,3779,3781,3783,3785,3787,3789,3791,3793,3795,3797,3799,3801,3803,3805,3807,3809,3811,3813,3815,3817,3819,3821,3823,3825,3827,3829,3831,3833,3835,3837,3839,3841,3843,3845,3847,3849,3851,3853,3855,3857,3859,3861,3863,3865,3867,3869,3871,3873,3875,3877,3879,3881,3883,3885,3887,3889,3891,3893,3895,3897,3899,3901,3903,3905,3907,3909,3911,3913,3915,3917,3919,3921,3923,3925,3927,3929,3931,3933,3935,3937,3939,3941,3943,3945,3947,3949,3951,3953,3955,3957,3959,3961,3963,3965,3967,3969,3971,3973,3975,3977,3979,3981,3983,3985,3987,3989,3991,3993,3995,3997,3999,4001,4003,4005,4007,4009,4011,4013,4015,4017,4019,4021,4023,4025,4027,4029,4031,4033,4035,4037,4039,4041,4043,4045,4047,4049,4051,4053,4055,4057,4059,4061,4063,4065,4067,4069,4071,4073,4075,4077,4079,4081,4083,4085,4087,4089,4091,4093,4095,4097,4099,4101,4103,4105,4107,4109,4111,4113,4115,4117,4119,4121,4123,4125,4127,4129,4131,4133,4135,4137,4139,4141,4143,4145,4147,4149,4151,4153,4155,4157,4159,4161,4163,4165,4167,4169,4171,4173,4175,4177,4179,4181,4183,4185,4187,4189,4191,4193,4195,4197,4199,4201,4203,4205,4207,4209,4211,4213,4215,4217,4219,4221,4223,4225,4227,4229,4231,4233,4235,4237,4239,4241,4243,4245,4247,4249,4251,4253,4255,4257,4259,4261,4263,4265,4267,4269,4271,4273,4275,4277,4279,4281,4283,4285,4287,4289,4291,4293,4295,4297,4299,4301,4303,4305,4307,4309,4311,4313,4315,4317,4319,4321,4323,4325,4327,4329,4331,4333,4335,4337,4339,4341,4343,4345,4347,4349,4351,4353,4355,4357,4359,4361,4363,4365,4367,4369,4371,4373,4375,4377,4379,4381,4383,4385,4387,4389,4391,4393,4395,4397,4399,4401,4403,4405,4407,4409,4411,4413,4415,4417,4419,4421,4423,4425,4427,4429,4431,4433,4435,4437,4439,4441,4443,4445,4447,4449,4451,4453,4455,4457,4459,4461,4463,4465,4467,4469,4471,4473,4475,4477,4479,4481,4483,4485,4487,4489,4491,4493,4495,4497,4499,4501,4503,4505,4507,4509,4511,4513,4515,4517,4519,4521,4523,4525,4527,4529,4531,4533,4535,4537,4539,4541,4543,4545,4547,4549,4551,4553,4555,4557,4559,4561,4563,4565,4567,4569,4571,4573,4575,4577,4579,4581,4583,4585,4587,4589,4591,4593,4595,4597,4599,4601,4603,4605,4607,4609,4611,4613,4615,4617,4619,4621,4623,4625,4627,4629,4631,4633,4635,4637,4639,4641,4643,4645,4647,4649,4651,4653,4655,4657,4659,4661,4663,4665,4667,4669,4671,4673,4675,4677,4679,4681,4683,4685,4687,4689,4691,4693,4695,4697,4699,4701,4703,4705,4707,4709,4711,4713,4715,4717,4719,4721,4723,4725,4727,4729,4731,4733,4735,4737,4739,4741,4743,4745,4747,4749,4751,4753,4755,4757,4759,4761,4763,4765,4767,4769,4771,4773,4775,4777,4779,4781,4783,4785,4787,4789,4791,4793,4795,4797,4799,4801,4803,4805,4807,4809,4811,4813,4815,4817,4819,4821,4823,4825,4827,4829,4831,4833,4835,4837,4839,4841,4843,4845,4847,4849,4851,4853,4855,4857,4859,4861,4863,4865,4867,4869,4871,4873,4875,4877,4879,4881,4883,4885,4887,4889,4891,4893,4895,4897,4899,4901,4903,4905,4907,4909,4911,4913,4915,4917,4919,4921,4923,4925,4927,4929,4931,4933,4935,4937,4939,4941,4943,4945,4947,4949,4951,4953,4955,4957,4959,4961,4963,4965,4967,4969,4971,4973,4975,4977,4979,4981,4983,4985,4987,4989,4991,4993,4995,4997,4999,5001,5003,5005,5007,5009,5011,5013,5015,5017,5019,5021,5023,5025,5027,5029,5031,5033,5035,5037,5039,5041,5043,5045,5047,5049,5051,5053,5055,5057,5059,5061,5063,5065,5067],{"categories":665},[666],"Business & SaaS",{"categories":668},[666],{"categories":670},[671],"AI News & Trends",{"categories":673},[],{"categories":675},[676],"AI Automation",{"categories":678},[679],"Marketing & Growth",{"categories":681},[682],"Design & Frontend",{"categories":684},[685],"Software Engineering",{"categories":687},[676],{"categories":689},[],{"categories":691},[682],{"categories":693},[682],{"categories":695},[676],{"categories":697},[682],{"categories":699},[682],{"categories":701},[702],"AI & LLMs",{"categories":704},[682],{"categories":706},[682],{"categories":708},[],{"categories":710},[682],{"categories":712},[682],{"categories":714},[702],{"categories":716},[717],"Developer Productivity",{"categories":719},[702],{"categories":721},[702],{"categories":723},[702],{"categories":725},[671],{"categories":727},[702],{"categories":729},[676],{"categories":731},[666],{"categories":733},[671],{"categories":735},[679],{"categories":737},[],{"categories":739},[],{"categories":741},[676],{"categories":743},[676],{"categories":745},[676],{"categories":747},[679],{"categories":749},[702],{"categories":751},[717],{"categories":753},[671],{"categories":755},[],{"categories":757},[],{"categories":759},[],{"categories":761},[762],"Data Science & Visualization",{"categories":764},[],{"categories":766},[676],{"categories":768},[685],{"categories":770},[676],{"categories":772},[676],{"categories":774},[702],{"categories":776},[679],{"categories":778},[676],{"categories":780},[],{"categories":782},[],{"categories":784},[],{"categories":786},[682],{"categories":788},[682],{"categories":790},[676],{"categories":792},[679],{"categories":794},[717],{"categories":796},[682],{"categories":798},[702],{"categories":800},[685],{"categories":802},[702],{"categories":804},[],{"categories":806},[676],{"categories":808},[702],{"categories":810},[717],{"categories":812},[717],{"categories":814},[],{"categories":816},[679],{"categories":818},[666],{"categories":820},[702],{"categories":822},[666],{"categories":824},[666],{"categories":826},[676],{"categories":828},[679],{"categories":830},[676],{"categories":832},[666],{"categories":834},[676],{"categories":836},[682],{"categories":838},[702],{"categories":840},[682],{"categories":842},[702],{"categories":844},[666],{"categories":846},[702],{"categories":848},[679],{"categories":850},[],{"categories":852},[702],{"categories":854},[666],{"categories":856},[],{"categories":858},[671],{"categories":860},[685],{"categories":862},[],{"categories":864},[702],{"categories":866},[682],{"categories":868},[702],{"categories":870},[682],{"categories":872},[],{"categories":874},[676],{"categories":876},[],{"categories":878},[],{"categories":880},[],{"categories":882},[702],{"categories":884},[],{"categories":886},[702],{"categories":888},[702],{"categories":890},[682],{"categories":892},[702],{"categories":894},[717],{"categories":896},[676],{"categories":898},[679],{"categories":900},[717],{"categories":902},[717],{"categories":904},[717],{"categories":906},[679],{"categories":908},[679],{"categories":910},[702],{"categories":912},[702],{"categories":914},[682],{"categories":916},[666],{"categories":918},[682],{"categories":920},[685],{"categories":922},[666],{"categories":924},[666],{"categories":926},[666],{"categories":928},[682],{"categories":930},[],{"categories":932},[],{"categories":934},[702],{"categories":936},[702],{"categories":938},[685],{"categories":940},[702],{"categories":942},[702],{"categories":944},[],{"categories":946},[702],{"categories":948},[702],{"categories":950},[],{"categories":952},[702],{"categories":954},[671],{"categories":956},[671],{"categories":958},[],{"categories":960},[],{"categories":962},[679],{"categories":964},[679],{"categories":966},[685],{"categories":968},[702],{"categories":970},[],{"categories":972},[],{"categories":974},[676],{"categories":976},[702],{"categories":978},[702],{"categories":980},[],{"categories":982},[702,666],{"categories":984},[702],{"categories":986},[],{"categories":988},[702],{"categories":990},[702],{"categories":992},[],{"categories":994},[],{"categories":996},[676],{"categories":998},[702],{"categories":1000},[702],{"categories":1002},[676],{"categories":1004},[702],{"categories":1006},[],{"categories":1008},[],{"categories":1010},[702],{"categories":1012},[],{"categories":1014},[702],{"categories":1016},[702],{"categories":1018},[],{"categories":1020},[676],{"categories":1022},[682],{"categories":1024},[],{"categories":1026},[676,1027],"DevOps & Cloud",{"categories":1029},[702],{"categories":1031},[676],{"categories":1033},[702],{"categories":1035},[],{"categories":1037},[],{"categories":1039},[],{"categories":1041},[],{"categories":1043},[702],{"categories":1045},[676],{"categories":1047},[],{"categories":1049},[676],{"categories":1051},[],{"categories":1053},[702],{"categories":1055},[],{"categories":1057},[],{"categories":1059},[],{"categories":1061},[],{"categories":1063},[676],{"categories":1065},[682],{"categories":1067},[702],{"categories":1069},[679],{"categories":1071},[671],{"categories":1073},[666],{"categories":1075},[717],{"categories":1077},[],{"categories":1079},[676],{"categories":1081},[676],{"categories":1083},[702],{"categories":1085},[],{"categories":1087},[],{"categories":1089},[],{"categories":1091},[676],{"categories":1093},[],{"categories":1095},[676],{"categories":1097},[676],{"categories":1099},[671],{"categories":1101},[676],{"categories":1103},[702],{"categories":1105},[],{"categories":1107},[702],{"categories":1109},[],{"categories":1111},[671],{"categories":1113},[676,1114],"Product Strategy",{"categories":1116},[685],{"categories":1118},[1027],{"categories":1120},[1114],{"categories":1122},[702],{"categories":1124},[676],{"categories":1126},[],{"categories":1128},[671],{"categories":1130},[671],{"categories":1132},[676],{"categories":1134},[],{"categories":1136},[676],{"categories":1138},[702],{"categories":1140},[702],{"categories":1142},[717],{"categories":1144},[702],{"categories":1146},[],{"categories":1148},[702,685],{"categories":1150},[671],{"categories":1152},[702],{"categories":1154},[671],{"categories":1156},[676],{"categories":1158},[671],{"categories":1160},[],{"categories":1162},[685],{"categories":1164},[666],{"categories":1166},[],{"categories":1168},[676],{"categories":1170},[676],{"categories":1172},[676],{"categories":1174},[676],{"categories":1176},[666],{"categories":1178},[682],{"categories":1180},[679],{"categories":1182},[],{"categories":1184},[676],{"categories":1186},[],{"categories":1188},[671],{"categories":1190},[671],{"categories":1192},[671],{"categories":1194},[676],{"categories":1196},[671],{"categories":1198},[702],{"categories":1200},[717],{"categories":1202},[702],{"categories":1204},[685],{"categories":1206},[702,717],{"categories":1208},[717],{"categories":1210},[717],{"categories":1212},[717],{"categories":1214},[717],{"categories":1216},[702],{"categories":1218},[],{"categories":1220},[],{"categories":1222},[679],{"categories":1224},[],{"categories":1226},[702],{"categories":1228},[717],{"categories":1230},[702],{"categories":1232},[682],{"categories":1234},[685],{"categories":1236},[],{"categories":1238},[702],{"categories":1240},[717],{"categories":1242},[679],{"categories":1244},[671],{"categories":1246},[685],{"categories":1248},[702],{"categories":1250},[],{"categories":1252},[685],{"categories":1254},[682],{"categories":1256},[666],{"categories":1258},[666],{"categories":1260},[],{"categories":1262},[682],{"categories":1264},[666],{"categories":1266},[671],{"categories":1268},[717],{"categories":1270},[676],{"categories":1272},[676],{"categories":1274},[702],{"categories":1276},[702],{"categories":1278},[671],{"categories":1280},[671],{"categories":1282},[717],{"categories":1284},[671],{"categories":1286},[],{"categories":1288},[1114],{"categories":1290},[676],{"categories":1292},[671],{"categories":1294},[671],{"categories":1296},[671],{"categories":1298},[702],{"categories":1300},[676],{"categories":1302},[676],{"categories":1304},[666],{"categories":1306},[666],{"categories":1308},[702],{"categories":1310},[671],{"categories":1312},[],{"categories":1314},[702],{"categories":1316},[666],{"categories":1318},[676],{"categories":1320},[676],{"categories":1322},[676],{"categories":1324},[682],{"categories":1326},[676],{"categories":1328},[717],{"categories":1330},[671],{"categories":1332},[671],{"categories":1334},[671],{"categories":1336},[671],{"categories":1338},[671],{"categories":1340},[],{"categories":1342},[],{"categories":1344},[717],{"categories":1346},[671],{"categories":1348},[671],{"categories":1350},[671],{"categories":1352},[],{"categories":1354},[702],{"categories":1356},[],{"categories":1358},[],{"categories":1360},[682],{"categories":1362},[666],{"categories":1364},[],{"categories":1366},[671],{"categories":1368},[676],{"categories":1370},[676],{"categories":1372},[676],{"categories":1374},[679],{"categories":1376},[676],{"categories":1378},[],{"categories":1380},[671],{"categories":1382},[671],{"categories":1384},[702],{"categories":1386},[],{"categories":1388},[679],{"categories":1390},[679],{"categories":1392},[702],{"categories":1394},[671],{"categories":1396},[666],{"categories":1398},[685],{"categories":1400},[702],{"categories":1402},[],{"categories":1404},[702],{"categories":1406},[702],{"categories":1408},[685],{"categories":1410},[702],{"categories":1412},[702],{"categories":1414},[702],{"categories":1416},[679],{"categories":1418},[671],{"categories":1420},[702],{"categories":1422},[702],{"categories":1424},[671],{"categories":1426},[676],{"categories":1428},[717],{"categories":1430},[666],{"categories":1432},[702],{"categories":1434},[717],{"categories":1436},[717],{"categories":1438},[],{"categories":1440},[679],{"categories":1442},[671],{"categories":1444},[671],{"categories":1446},[717],{"categories":1448},[676],{"categories":1450},[676],{"categories":1452},[676],{"categories":1454},[676],{"categories":1456},[682],{"categories":1458},[702],{"categories":1460},[702],{"categories":1462},[1114],{"categories":1464},[702],{"categories":1466},[702],{"categories":1468},[676],{"categories":1470},[666],{"categories":1472},[679],{"categories":1474},[],{"categories":1476},[666],{"categories":1478},[666],{"categories":1480},[],{"categories":1482},[682],{"categories":1484},[702],{"categories":1486},[],{"categories":1488},[],{"categories":1490},[671],{"categories":1492},[671],{"categories":1494},[671],{"categories":1496},[671],{"categories":1498},[],{"categories":1500},[671],{"categories":1502},[702],{"categories":1504},[702],{"categories":1506},[],{"categories":1508},[671],{"categories":1510},[671],{"categories":1512},[666],{"categories":1514},[702],{"categories":1516},[],{"categories":1518},[],{"categories":1520},[671],{"categories":1522},[671],{"categories":1524},[671],{"categories":1526},[702],{"categories":1528},[671],{"categories":1530},[671],{"categories":1532},[671],{"categories":1534},[671],{"categories":1536},[671],{"categories":1538},[],{"categories":1540},[676],{"categories":1542},[702],{"categories":1544},[679],{"categories":1546},[666],{"categories":1548},[676],{"categories":1550},[702],{"categories":1552},[],{"categories":1554},[679],{"categories":1556},[671],{"categories":1558},[671],{"categories":1560},[671],{"categories":1562},[671],{"categories":1564},[717],{"categories":1566},[685],{"categories":1568},[],{"categories":1570},[702],{"categories":1572},[676],{"categories":1574},[676],{"categories":1576},[676],{"categories":1578},[1027],{"categories":1580},[676],{"categories":1582},[702],{"categories":1584},[702],{"categories":1586},[685],{"categories":1588},[1027],{"categories":1590},[762],{"categories":1592},[702],{"categories":1594},[762],{"categories":1596},[],{"categories":1598},[679],{"categories":1600},[679],{"categories":1602},[682],{"categories":1604},[1027],{"categories":1606},[676],{"categories":1608},[702],{"categories":1610},[702],{"categories":1612},[676],{"categories":1614},[676],{"categories":1616},[676],{"categories":1618},[717],{"categories":1620},[717],{"categories":1622},[676],{"categories":1624},[676],{"categories":1626},[],{"categories":1628},[676],{"categories":1630},[676],{"categories":1632},[702],{"categories":1634},[762],{"categories":1636},[676],{"categories":1638},[676],{"categories":1640},[676],{"categories":1642},[676],{"categories":1644},[666],{"categories":1646},[682],{"categories":1648},[671],{"categories":1650},[685],{"categories":1652},[1027],{"categories":1654},[685],{"categories":1656},[762],{"categories":1658},[],{"categories":1660},[685],{"categories":1662},[],{"categories":1664},[],{"categories":1666},[685],{"categories":1668},[702],{"categories":1670},[],{"categories":1672},[],{"categories":1674},[],{"categories":1676},[666],{"categories":1678},[],{"categories":1680},[],{"categories":1682},[762],{"categories":1684},[702],{"categories":1686},[1027],{"categories":1688},[702],{"categories":1690},[],{"categories":1692},[676],{"categories":1694},[717],{"categories":1696},[717],{"categories":1698},[679],{"categories":1700},[679],{"categories":1702},[679],{"categories":1704},[1027],{"categories":1706},[685],{"categories":1708},[676],{"categories":1710},[666],{"categories":1712},[666],{"categories":1714},[685],{"categories":1716},[682],{"categories":1718},[762],{"categories":1720},[682],{"categories":1722},[],{"categories":1724},[702],{"categories":1726},[676],{"categories":1728},[676],{"categories":1730},[717],{"categories":1732},[676],{"categories":1734},[676],{"categories":1736},[682],{"categories":1738},[682],{"categories":1740},[676],{"categories":1742},[1027],{"categories":1744},[702],{"categories":1746},[],{"categories":1748},[679],{"categories":1750},[676],{"categories":1752},[666],{"categories":1754},[676],{"categories":1756},[676],{"categories":1758},[],{"categories":1760},[702],{"categories":1762},[676],{"categories":1764},[676],{"categories":1766},[717],{"categories":1768},[676],{"categories":1770},[702],{"categories":1772},[],{"categories":1774},[676],{"categories":1776},[],{"categories":1778},[682],{"categories":1780},[717],{"categories":1782},[702],{"categories":1784},[685],{"categories":1786},[682],{"categories":1788},[717],{"categories":1790},[762],{"categories":1792},[717],{"categories":1794},[],{"categories":1796},[702],{"categories":1798},[702],{"categories":1800},[1114],{"categories":1802},[685],{"categories":1804},[702,676],{"categories":1806},[676],{"categories":1808},[702],{"categories":1810},[676],{"categories":1812},[676,685],{"categories":1814},[676],{"categories":1816},[702],{"categories":1818},[],{"categories":1820},[717],{"categories":1822},[702],{"categories":1824},[676],{"categories":1826},[702],{"categories":1828},[],{"categories":1830},[685],{"categories":1832},[666],{"categories":1834},[676],{"categories":1836},[],{"categories":1838},[762],{"categories":1840},[685],{"categories":1842},[676],{"categories":1844},[685],{"categories":1846},[],{"categories":1848},[676],{"categories":1850},[],{"categories":1852},[676],{"categories":1854},[],{"categories":1856},[],{"categories":1858},[682],{"categories":1860},[717],{"categories":1862},[702],{"categories":1864},[676],{"categories":1866},[],{"categories":1868},[676],{"categories":1870},[685],{"categories":1872},[702],{"categories":1874},[702],{"categories":1876},[685],{"categories":1878},[685],{"categories":1880},[717],{"categories":1882},[666],{"categories":1884},[],{"categories":1886},[702],{"categories":1888},[702],{"categories":1890},[702],{"categories":1892},[676],{"categories":1894},[702],{"categories":1896},[],{"categories":1898},[682],{"categories":1900},[702],{"categories":1902},[676],{"categories":1904},[],{"categories":1906},[702],{"categories":1908},[],{"categories":1910},[702],{"categories":1912},[],{"categories":1914},[],{"categories":1916},[],{"categories":1918},[702],{"categories":1920},[702],{"categories":1922},[702],{"categories":1924},[702],{"categories":1926},[],{"categories":1928},[702],{"categories":1930},[702],{"categories":1932},[702],{"categories":1934},[],{"categories":1936},[702],{"categories":1938},[],{"categories":1940},[679],{"categories":1942},[702],{"categories":1944},[],{"categories":1946},[],{"categories":1948},[],{"categories":1950},[702],{"categories":1952},[671],{"categories":1954},[671],{"categories":1956},[],{"categories":1958},[676],{"categories":1960},[702],{"categories":1962},[],{"categories":1964},[702],{"categories":1966},[702],{"categories":1968},[671],{"categories":1970},[],{"categories":1972},[702],{"categories":1974},[671],{"categories":1976},[676],{"categories":1978},[702],{"categories":1980},[],{"categories":1982},[],{"categories":1984},[],{"categories":1986},[676],{"categories":1988},[676],{"categories":1990},[676],{"categories":1992},[676],{"categories":1994},[702],{"categories":1996},[682],{"categories":1998},[682],{"categories":2000},[676],{"categories":2002},[676],{"categories":2004},[717],{"categories":2006},[1114],{"categories":2008},[717],{"categories":2010},[717],{"categories":2012},[702],{"categories":2014},[676],{"categories":2016},[702],{"categories":2018},[717],{"categories":2020},[702],{"categories":2022},[676],{"categories":2024},[676],{"categories":2026},[676],{"categories":2028},[676],{"categories":2030},[676],{"categories":2032},[702],{"categories":2034},[717],{"categories":2036},[717],{"categories":2038},[679],{"categories":2040},[676],{"categories":2042},[],{"categories":2044},[676],{"categories":2046},[],{"categories":2048},[671],{"categories":2050},[702],{"categories":2052},[],{"categories":2054},[666],{"categories":2056},[682],{"categories":2058},[682],{"categories":2060},[676],{"categories":2062},[676],{"categories":2064},[702],{"categories":2066},[702],{"categories":2068},[671],{"categories":2070},[671],{"categories":2072},[1027],{"categories":2074},[676],{"categories":2076},[671],{"categories":2078},[],{"categories":2080},[702],{"categories":2082},[676],{"categories":2084},[676],{"categories":2086},[676],{"categories":2088},[676],{"categories":2090},[702],{"categories":2092},[702],{"categories":2094},[702],{"categories":2096},[702],{"categories":2098},[676],{"categories":2100},[676],{"categories":2102},[676],{"categories":2104},[676],{"categories":2106},[],{"categories":2108},[682],{"categories":2110},[702],{"categories":2112},[702],{"categories":2114},[702],{"categories":2116},[],{"categories":2118},[679],{"categories":2120},[],{"categories":2122},[717],{"categories":2124},[],{"categories":2126},[676],{"categories":2128},[717],{"categories":2130},[682],{"categories":2132},[717],{"categories":2134},[],{"categories":2136},[717],{"categories":2138},[717],{"categories":2140},[],{"categories":2142},[682],{"categories":2144},[676],{"categories":2146},[676],{"categories":2148},[717],{"categories":2150},[702],{"categories":2152},[702],{"categories":2154},[],{"categories":2156},[671],{"categories":2158},[],{"categories":2160},[679],{"categories":2162},[],{"categories":2164},[682],{"categories":2166},[671],{"categories":2168},[682],{"categories":2170},[682],{"categories":2172},[682],{"categories":2174},[682],{"categories":2176},[682],{"categories":2178},[682],{"categories":2180},[682],{"categories":2182},[682],{"categories":2184},[682],{"categories":2186},[682],{"categories":2188},[],{"categories":2190},[676],{"categories":2192},[682],{"categories":2194},[702],{"categories":2196},[702],{"categories":2198},[682],{"categories":2200},[682],{"categories":2202},[682],{"categories":2204},[682],{"categories":2206},[682],{"categories":2208},[682],{"categories":2210},[682],{"categories":2212},[702,682],{"categories":2214},[682],{"categories":2216},[682],{"categories":2218},[682],{"categories":2220},[682],{"categories":2222},[],{"categories":2224},[682],{"categories":2226},[682],{"categories":2228},[682],{"categories":2230},[682],{"categories":2232},[682],{"categories":2234},[682],{"categories":2236},[682],{"categories":2238},[682],{"categories":2240},[682],{"categories":2242},[682,702],{"categories":2244},[682],{"categories":2246},[682],{"categories":2248},[],{"categories":2250},[671],{"categories":2252},[],{"categories":2254},[702],{"categories":2256},[],{"categories":2258},[676],{"categories":2260},[1027],{"categories":2262},[1114],{"categories":2264},[676],{"categories":2266},[676],{"categories":2268},[],{"categories":2270},[676],{"categories":2272},[],{"categories":2274},[676],{"categories":2276},[],{"categories":2278},[],{"categories":2280},[702],{"categories":2282},[702],{"categories":2284},[702],{"categories":2286},[671],{"categories":2288},[671],{"categories":2290},[671],{"categories":2292},[671],{"categories":2294},[],{"categories":2296},[671],{"categories":2298},[],{"categories":2300},[671],{"categories":2302},[702],{"categories":2304},[671],{"categories":2306},[671],{"categories":2308},[671],{"categories":2310},[671],{"categories":2312},[702],{"categories":2314},[671],{"categories":2316},[676],{"categories":2318},[],{"categories":2320},[676],{"categories":2322},[671],{"categories":2324},[702],{"categories":2326},[671],{"categories":2328},[671],{"categories":2330},[671],{"categories":2332},[702],{"categories":2334},[702],{"categories":2336},[702],{"categories":2338},[],{"categories":2340},[],{"categories":2342},[702],{"categories":2344},[671],{"categories":2346},[],{"categories":2348},[702],{"categories":2350},[676],{"categories":2352},[702],{"categories":2354},[676],{"categories":2356},[676],{"categories":2358},[702],{"categories":2360},[],{"categories":2362},[],{"categories":2364},[676],{"categories":2366},[676],{"categories":2368},[676],{"categories":2370},[676],{"categories":2372},[676],{"categories":2374},[676],{"categories":2376},[676],{"categories":2378},[676],{"categories":2380},[],{"categories":2382},[676],{"categories":2384},[676],{"categories":2386},[676],{"categories":2388},[702],{"categories":2390},[702],{"categories":2392},[702],{"categories":2394},[671],{"categories":2396},[702],{"categories":2398},[702],{"categories":2400},[702],{"categories":2402},[676],{"categories":2404},[679],{"categories":2406},[679],{"categories":2408},[679],{"categories":2410},[676],{"categories":2412},[],{"categories":2414},[702],{"categories":2416},[],{"categories":2418},[],{"categories":2420},[702],{"categories":2422},[],{"categories":2424},[676],{"categories":2426},[682],{"categories":2428},[717],{"categories":2430},[762],{"categories":2432},[702],{"categories":2434},[676],{"categories":2436},[682],{"categories":2438},[],{"categories":2440},[676],{"categories":2442},[679,666],{"categories":2444},[676],{"categories":2446},[676],{"categories":2448},[1027],{"categories":2450},[685],{"categories":2452},[679],{"categories":2454},[717],{"categories":2456},[702],{"categories":2458},[],{"categories":2460},[702],{"categories":2462},[],{"categories":2464},[702],{"categories":2466},[702],{"categories":2468},[676],{"categories":2470},[],{"categories":2472},[702],{"categories":2474},[676],{"categories":2476},[702],{"categories":2478},[717],{"categories":2480},[676],{"categories":2482},[702],{"categories":2484},[702,717],{"categories":2486},[717],{"categories":2488},[],{"categories":2490},[702],{"categories":2492},[702],{"categories":2494},[702],{"categories":2496},[],{"categories":2498},[],{"categories":2500},[676],{"categories":2502},[679],{"categories":2504},[671],{"categories":2506},[676],{"categories":2508},[702],{"categories":2510},[671],{"categories":2512},[],{"categories":2514},[717],{"categories":2516},[671],{"categories":2518},[],{"categories":2520},[762],{"categories":2522},[679],{"categories":2524},[666],{"categories":2526},[671],{"categories":2528},[702],{"categories":2530},[676],{"categories":2532},[702],{"categories":2534},[676],{"categories":2536},[676],{"categories":2538},[671],{"categories":2540},[717],{"categories":2542},[682],{"categories":2544},[666],{"categories":2546},[702],{"categories":2548},[702],{"categories":2550},[],{"categories":2552},[],{"categories":2554},[702],{"categories":2556},[],{"categories":2558},[702],{"categories":2560},[671],{"categories":2562},[],{"categories":2564},[676],{"categories":2566},[717],{"categories":2568},[671],{"categories":2570},[717],{"categories":2572},[676],{"categories":2574},[702],{"categories":2576},[],{"categories":2578},[676],{"categories":2580},[676],{"categories":2582},[682],{"categories":2584},[676],{"categories":2586},[682],{"categories":2588},[676],{"categories":2590},[676],{"categories":2592},[682],{"categories":2594},[],{"categories":2596},[],{"categories":2598},[682],{"categories":2600},[682],{"categories":2602},[682],{"categories":2604},[685],{"categories":2606},[717],{"categories":2608},[717],{"categories":2610},[676],{"categories":2612},[671],{"categories":2614},[717],{"categories":2616},[717],{"categories":2618},[679],{"categories":2620},[682],{"categories":2622},[676],{"categories":2624},[676],{"categories":2626},[702],{"categories":2628},[717],{"categories":2630},[702],{"categories":2632},[],{"categories":2634},[1027],{"categories":2636},[1114],{"categories":2638},[],{"categories":2640},[],{"categories":2642},[676],{"categories":2644},[671],{"categories":2646},[679],{"categories":2648},[679],{"categories":2650},[762],{"categories":2652},[682],{"categories":2654},[762],{"categories":2656},[762],{"categories":2658},[676],{"categories":2660},[],{"categories":2662},[],{"categories":2664},[762],{"categories":2666},[685],{"categories":2668},[702],{"categories":2670},[685],{"categories":2672},[762],{"categories":2674},[685],{"categories":2676},[762],{"categories":2678},[666],{"categories":2680},[685],{"categories":2682},[717],{"categories":2684},[702],{"categories":2686},[],{"categories":2688},[762],{"categories":2690},[1027],{"categories":2692},[],{"categories":2694},[702],{"categories":2696},[702],{"categories":2698},[],{"categories":2700},[],{"categories":2702},[702],{"categories":2704},[702],{"categories":2706},[671],{"categories":2708},[702],{"categories":2710},[],{"categories":2712},[671],{"categories":2714},[],{"categories":2716},[],{"categories":2718},[671],{"categories":2720},[671],{"categories":2722},[702],{"categories":2724},[702],{"categories":2726},[702],{"categories":2728},[702],{"categories":2730},[702],{"categories":2732},[702],{"categories":2734},[679],{"categories":2736},[],{"categories":2738},[702],{"categories":2740},[],{"categories":2742},[],{"categories":2744},[676],{"categories":2746},[717],{"categories":2748},[],{"categories":2750},[1027],{"categories":2752},[702,1027],{"categories":2754},[702],{"categories":2756},[],{"categories":2758},[682],{"categories":2760},[682],{"categories":2762},[682],{"categories":2764},[682],{"categories":2766},[682],{"categories":2768},[],{"categories":2770},[],{"categories":2772},[],{"categories":2774},[685],{"categories":2776},[676],{"categories":2778},[666],{"categories":2780},[685],{"categories":2782},[717],{"categories":2784},[682],{"categories":2786},[],{"categories":2788},[679],{"categories":2790},[1114],{"categories":2792},[762],{"categories":2794},[762],{"categories":2796},[762],{"categories":2798},[717],{"categories":2800},[1114],{"categories":2802},[717],{"categories":2804},[],{"categories":2806},[666],{"categories":2808},[685],{"categories":2810},[702],{"categories":2812},[682],{"categories":2814},[679],{"categories":2816},[685],{"categories":2818},[679],{"categories":2820},[702],{"categories":2822},[682],{"categories":2824},[685],{"categories":2826},[1027],{"categories":2828},[702],{"categories":2830},[671],{"categories":2832},[685],{"categories":2834},[],{"categories":2836},[702],{"categories":2838},[685],{"categories":2840},[685],{"categories":2842},[676],{"categories":2844},[],{"categories":2846},[679],{"categories":2848},[679],{"categories":2850},[679],{"categories":2852},[676],{"categories":2854},[702],{"categories":2856},[],{"categories":2858},[666],{"categories":2860},[717],{"categories":2862},[717],{"categories":2864},[762],{"categories":2866},[666],{"categories":2868},[671],{"categories":2870},[762],{"categories":2872},[],{"categories":2874},[671],{"categories":2876},[671],{"categories":2878},[671],{"categories":2880},[702],{"categories":2882},[666],{"categories":2884},[702],{"categories":2886},[],{"categories":2888},[],{"categories":2890},[],{"categories":2892},[685],{"categories":2894},[676],{"categories":2896},[],{"categories":2898},[717],{"categories":2900},[682],{"categories":2902},[],{"categories":2904},[679],{"categories":2906},[],{"categories":2908},[682],{"categories":2910},[702],{"categories":2912},[717],{"categories":2914},[666],{"categories":2916},[],{"categories":2918},[682],{"categories":2920},[682],{"categories":2922},[702],{"categories":2924},[],{"categories":2926},[],{"categories":2928},[685],{"categories":2930},[702],{"categories":2932},[],{"categories":2934},[676],{"categories":2936},[702],{"categories":2938},[],{"categories":2940},[685],{"categories":2942},[676],{"categories":2944},[702],{"categories":2946},[762],{"categories":2948},[702],{"categories":2950},[],{"categories":2952},[762],{"categories":2954},[702],{"categories":2956},[685],{"categories":2958},[702],{"categories":2960},[762],{"categories":2962},[676],{"categories":2964},[702],{"categories":2966},[702],{"categories":2968},[702,676],{"categories":2970},[676],{"categories":2972},[676],{"categories":2974},[676],{"categories":2976},[682],{"categories":2978},[717],{"categories":2980},[702],{"categories":2982},[717],{"categories":2984},[682],{"categories":2986},[702],{"categories":2988},[],{"categories":2990},[],{"categories":2992},[702],{"categories":2994},[702],{"categories":2996},[702],{"categories":2998},[676],{"categories":3000},[702],{"categories":3002},[],{"categories":3004},[702],{"categories":3006},[702],{"categories":3008},[676],{"categories":3010},[676],{"categories":3012},[702],{"categories":3014},[702],{"categories":3016},[],{"categories":3018},[702],{"categories":3020},[],{"categories":3022},[702],{"categories":3024},[702],{"categories":3026},[702],{"categories":3028},[702],{"categories":3030},[702],{"categories":3032},[702],{"categories":3034},[702],{"categories":3036},[],{"categories":3038},[702],{"categories":3040},[671],{"categories":3042},[671],{"categories":3044},[],{"categories":3046},[],{"categories":3048},[702],{"categories":3050},[],{"categories":3052},[702],{"categories":3054},[702,1027],{"categories":3056},[],{"categories":3058},[671],{"categories":3060},[],{"categories":3062},[702],{"categories":3064},[],{"categories":3066},[],{"categories":3068},[],{"categories":3070},[702],{"categories":3072},[],{"categories":3074},[702],{"categories":3076},[],{"categories":3078},[702],{"categories":3080},[702],{"categories":3082},[],{"categories":3084},[],{"categories":3086},[702,1027],{"categories":3088},[1027,702],{"categories":3090},[671],{"categories":3092},[],{"categories":3094},[702],{"categories":3096},[],{"categories":3098},[702],{"categories":3100},[702],{"categories":3102},[],{"categories":3104},[671],{"categories":3106},[702,666],{"categories":3108},[671],{"categories":3110},[685],{"categories":3112},[],{"categories":3114},[676],{"categories":3116},[702],{"categories":3118},[679],{"categories":3120},[702],{"categories":3122},[717],{"categories":3124},[717],{"categories":3126},[1027],{"categories":3128},[671],{"categories":3130},[702],{"categories":3132},[1027],{"categories":3134},[685],{"categories":3136},[702],{"categories":3138},[717],{"categories":3140},[],{"categories":3142},[702],{"categories":3144},[],{"categories":3146},[],{"categories":3148},[702],{"categories":3150},[],{"categories":3152},[702],{"categories":3154},[685],{"categories":3156},[666],{"categories":3158},[717],{"categories":3160},[679],{"categories":3162},[676],{"categories":3164},[717],{"categories":3166},[],{"categories":3168},[679],{"categories":3170},[],{"categories":3172},[],{"categories":3174},[702],{"categories":3176},[671],{"categories":3178},[679],{"categories":3180},[],{"categories":3182},[702],{"categories":3184},[671],{"categories":3186},[671],{"categories":3188},[679],{"categories":3190},[671],{"categories":3192},[702],{"categories":3194},[671],{"categories":3196},[702],{"categories":3198},[],{"categories":3200},[702],{"categories":3202},[702],{"categories":3204},[702],{"categories":3206},[671],{"categories":3208},[],{"categories":3210},[],{"categories":3212},[682],{"categories":3214},[671],{"categories":3216},[],{"categories":3218},[702],{"categories":3220},[702],{"categories":3222},[702],{"categories":3224},[702],{"categories":3226},[702],{"categories":3228},[702],{"categories":3230},[702],{"categories":3232},[702],{"categories":3234},[702],{"categories":3236},[679],{"categories":3238},[702,682],{"categories":3240},[671],{"categories":3242},[671],{"categories":3244},[702],{"categories":3246},[685],{"categories":3248},[762],{"categories":3250},[702],{"categories":3252},[702],{"categories":3254},[],{"categories":3256},[],{"categories":3258},[702],{"categories":3260},[702],{"categories":3262},[],{"categories":3264},[682],{"categories":3266},[682],{"categories":3268},[717],{"categories":3270},[702],{"categories":3272},[717],{"categories":3274},[702],{"categories":3276},[702],{"categories":3278},[],{"categories":3280},[702],{"categories":3282},[],{"categories":3284},[],{"categories":3286},[702],{"categories":3288},[],{"categories":3290},[],{"categories":3292},[671],{"categories":3294},[],{"categories":3296},[702],{"categories":3298},[702],{"categories":3300},[702],{"categories":3302},[],{"categories":3304},[702],{"categories":3306},[671],{"categories":3308},[1114],{"categories":3310},[676],{"categories":3312},[702],{"categories":3314},[],{"categories":3316},[676],{"categories":3318},[702],{"categories":3320},[],{"categories":3322},[702],{"categories":3324},[],{"categories":3326},[676],{"categories":3328},[],{"categories":3330},[],{"categories":3332},[676],{"categories":3334},[676],{"categories":3336},[676],{"categories":3338},[702],{"categories":3340},[],{"categories":3342},[676],{"categories":3344},[676],{"categories":3346},[],{"categories":3348},[],{"categories":3350},[676],{"categories":3352},[702],{"categories":3354},[671],{"categories":3356},[1114],{"categories":3358},[679],{"categories":3360},[],{"categories":3362},[682],{"categories":3364},[702],{"categories":3366},[702],{"categories":3368},[666],{"categories":3370},[671],{"categories":3372},[671],{"categories":3374},[671],{"categories":3376},[671],{"categories":3378},[],{"categories":3380},[676],{"categories":3382},[676],{"categories":3384},[676],{"categories":3386},[676],{"categories":3388},[717],{"categories":3390},[702],{"categories":3392},[666],{"categories":3394},[],{"categories":3396},[717],{"categories":3398},[676],{"categories":3400},[682],{"categories":3402},[682],{"categories":3404},[682],{"categories":3406},[682],{"categories":3408},[682],{"categories":3410},[682],{"categories":3412},[702,666],{"categories":3414},[676],{"categories":3416},[666],{"categories":3418},[671],{"categories":3420},[671],{"categories":3422},[717],{"categories":3424},[],{"categories":3426},[],{"categories":3428},[679],{"categories":3430},[],{"categories":3432},[702],{"categories":3434},[679],{"categories":3436},[702],{"categories":3438},[685],{"categories":3440},[676],{"categories":3442},[666],{"categories":3444},[676],{"categories":3446},[685],{"categories":3448},[717],{"categories":3450},[676],{"categories":3452},[],{"categories":3454},[717],{"categories":3456},[],{"categories":3458},[],{"categories":3460},[676],{"categories":3462},[676],{"categories":3464},[676],{"categories":3466},[702],{"categories":3468},[702],{"categories":3470},[702],{"categories":3472},[702],{"categories":3474},[702],{"categories":3476},[],{"categories":3478},[1027],{"categories":3480},[702],{"categories":3482},[],{"categories":3484},[],{"categories":3486},[],{"categories":3488},[717],{"categories":3490},[],{"categories":3492},[702],{"categories":3494},[],{"categories":3496},[671],{"categories":3498},[702],{"categories":3500},[671],{"categories":3502},[702],{"categories":3504},[676],{"categories":3506},[],{"categories":3508},[702],{"categories":3510},[702],{"categories":3512},[],{"categories":3514},[762],{"categories":3516},[762],{"categories":3518},[685],{"categories":3520},[682],{"categories":3522},[],{"categories":3524},[702],{"categories":3526},[676],{"categories":3528},[],{"categories":3530},[],{"categories":3532},[702],{"categories":3534},[685],{"categories":3536},[676],{"categories":3538},[666],{"categories":3540},[717,685],{"categories":3542},[685],{"categories":3544},[702],{"categories":3546},[676],{"categories":3548},[],{"categories":3550},[],{"categories":3552},[],{"categories":3554},[],{"categories":3556},[],{"categories":3558},[],{"categories":3560},[702],{"categories":3562},[],{"categories":3564},[],{"categories":3566},[702],{"categories":3568},[],{"categories":3570},[],{"categories":3572},[],{"categories":3574},[702],{"categories":3576},[671],{"categories":3578},[],{"categories":3580},[],{"categories":3582},[],{"categories":3584},[702],{"categories":3586},[],{"categories":3588},[702],{"categories":3590},[702],{"categories":3592},[],{"categories":3594},[702],{"categories":3596},[685],{"categories":3598},[],{"categories":3600},[717],{"categories":3602},[717],{"categories":3604},[],{"categories":3606},[679],{"categories":3608},[],{"categories":3610},[],{"categories":3612},[],{"categories":3614},[682],{"categories":3616},[671],{"categories":3618},[676],{"categories":3620},[702],{"categories":3622},[666],{"categories":3624},[702],{"categories":3626},[],{"categories":3628},[],{"categories":3630},[666],{"categories":3632},[679],{"categories":3634},[676],{"categories":3636},[],{"categories":3638},[1027],{"categories":3640},[],{"categories":3642},[679],{"categories":3644},[702],{"categories":3646},[702],{"categories":3648},[679],{"categories":3650},[702],{"categories":3652},[682],{"categories":3654},[676],{"categories":3656},[702],{"categories":3658},[676],{"categories":3660},[702],{"categories":3662},[676],{"categories":3664},[717],{"categories":3666},[717],{"categories":3668},[682],{"categories":3670},[],{"categories":3672},[702],{"categories":3674},[702],{"categories":3676},[679],{"categories":3678},[1114],{"categories":3680},[717],{"categories":3682},[671],{"categories":3684},[702],{"categories":3686},[671],{"categories":3688},[702],{"categories":3690},[702],{"categories":3692},[],{"categories":3694},[702],{"categories":3696},[],{"categories":3698},[702],{"categories":3700},[679],{"categories":3702},[702],{"categories":3704},[702],{"categories":3706},[702],{"categories":3708},[],{"categories":3710},[702],{"categories":3712},[702],{"categories":3714},[1114],{"categories":3716},[],{"categories":3718},[671],{"categories":3720},[1027],{"categories":3722},[685],{"categories":3724},[],{"categories":3726},[762],{"categories":3728},[],{"categories":3730},[],{"categories":3732},[671],{"categories":3734},[702],{"categories":3736},[],{"categories":3738},[702],{"categories":3740},[702],{"categories":3742},[676],{"categories":3744},[702],{"categories":3746},[671],{"categories":3748},[671],{"categories":3750},[682],{"categories":3752},[682],{"categories":3754},[682],{"categories":3756},[702],{"categories":3758},[762],{"categories":3760},[671],{"categories":3762},[717],{"categories":3764},[],{"categories":3766},[682],{"categories":3768},[682],{"categories":3770},[1027],{"categories":3772},[682],{"categories":3774},[682],{"categories":3776},[676],{"categories":3778},[671],{"categories":3780},[1027],{"categories":3782},[702],{"categories":3784},[702],{"categories":3786},[702],{"categories":3788},[702],{"categories":3790},[],{"categories":3792},[676],{"categories":3794},[702],{"categories":3796},[682],{"categories":3798},[],{"categories":3800},[],{"categories":3802},[671],{"categories":3804},[],{"categories":3806},[676],{"categories":3808},[676],{"categories":3810},[676],{"categories":3812},[676],{"categories":3814},[676],{"categories":3816},[676],{"categories":3818},[676],{"categories":3820},[676],{"categories":3822},[],{"categories":3824},[],{"categories":3826},[702],{"categories":3828},[],{"categories":3830},[676],{"categories":3832},[717],{"categories":3834},[717],{"categories":3836},[762],{"categories":3838},[666],{"categories":3840},[],{"categories":3842},[],{"categories":3844},[],{"categories":3846},[682],{"categories":3848},[702],{"categories":3850},[],{"categories":3852},[666],{"categories":3854},[666],{"categories":3856},[682],{"categories":3858},[717],{"categories":3860},[762],{"categories":3862},[682],{"categories":3864},[682],{"categories":3866},[],{"categories":3868},[676],{"categories":3870},[666],{"categories":3872},[666],{"categories":3874},[702],{"categories":3876},[676],{"categories":3878},[685],{"categories":3880},[682],{"categories":3882},[],{"categories":3884},[679],{"categories":3886},[762],{"categories":3888},[671],{"categories":3890},[671],{"categories":3892},[671],{"categories":3894},[1027],{"categories":3896},[],{"categories":3898},[676],{"categories":3900},[],{"categories":3902},[676],{"categories":3904},[676],{"categories":3906},[702],{"categories":3908},[702],{"categories":3910},[685],{"categories":3912},[676],{"categories":3914},[685],{"categories":3916},[],{"categories":3918},[676],{"categories":3920},[682],{"categories":3922},[682],{"categories":3924},[682],{"categories":3926},[702],{"categories":3928},[676],{"categories":3930},[702],{"categories":3932},[666],{"categories":3934},[671],{"categories":3936},[682],{"categories":3938},[671],{"categories":3940},[702],{"categories":3942},[],{"categories":3944},[671],{"categories":3946},[676],{"categories":3948},[671],{"categories":3950},[671],{"categories":3952},[671],{"categories":3954},[671],{"categories":3956},[],{"categories":3958},[],{"categories":3960},[671],{"categories":3962},[671],{"categories":3964},[],{"categories":3966},[671],{"categories":3968},[671],{"categories":3970},[702],{"categories":3972},[702],{"categories":3974},[671],{"categories":3976},[671],{"categories":3978},[702],{"categories":3980},[],{"categories":3982},[702],{"categories":3984},[676],{"categories":3986},[702],{"categories":3988},[702],{"categories":3990},[],{"categories":3992},[702],{"categories":3994},[702],{"categories":3996},[702],{"categories":3998},[671],{"categories":4000},[],{"categories":4002},[],{"categories":4004},[],{"categories":4006},[],{"categories":4008},[702],{"categories":4010},[702],{"categories":4012},[],{"categories":4014},[679],{"categories":4016},[671],{"categories":4018},[],{"categories":4020},[],{"categories":4022},[],{"categories":4024},[],{"categories":4026},[],{"categories":4028},[702],{"categories":4030},[],{"categories":4032},[],{"categories":4034},[702],{"categories":4036},[],{"categories":4038},[676],{"categories":4040},[676],{"categories":4042},[676],{"categories":4044},[666],{"categories":4046},[],{"categories":4048},[679],{"categories":4050},[685],{"categories":4052},[685],{"categories":4054},[1027],{"categories":4056},[671],{"categories":4058},[],{"categories":4060},[702],{"categories":4062},[702],{"categories":4064},[666],{"categories":4066},[],{"categories":4068},[666],{"categories":4070},[],{"categories":4072},[],{"categories":4074},[],{"categories":4076},[685],{"categories":4078},[676],{"categories":4080},[676],{"categories":4082},[676],{"categories":4084},[676],{"categories":4086},[676],{"categories":4088},[],{"categories":4090},[671],{"categories":4092},[702],{"categories":4094},[702],{"categories":4096},[702],{"categories":4098},[],{"categories":4100},[666],{"categories":4102},[],{"categories":4104},[682],{"categories":4106},[762],{"categories":4108},[682],{"categories":4110},[],{"categories":4112},[],{"categories":4114},[702],{"categories":4116},[676],{"categories":4118},[],{"categories":4120},[702],{"categories":4122},[702],{"categories":4124},[702],{"categories":4126},[676],{"categories":4128},[676],{"categories":4130},[702],{"categories":4132},[762],{"categories":4134},[676],{"categories":4136},[],{"categories":4138},[702],{"categories":4140},[],{"categories":4142},[1114],{"categories":4144},[685],{"categories":4146},[762],{"categories":4148},[685],{"categories":4150},[1027],{"categories":4152},[702],{"categories":4154},[685],{"categories":4156},[671],{"categories":4158},[1027],{"categories":4160},[685],{"categories":4162},[682],{"categories":4164},[682],{"categories":4166},[],{"categories":4168},[685],{"categories":4170},[],{"categories":4172},[717],{"categories":4174},[685],{"categories":4176},[],{"categories":4178},[762],{"categories":4180},[762],{"categories":4182},[1114],{"categories":4184},[],{"categories":4186},[702],{"categories":4188},[685],{"categories":4190},[1027],{"categories":4192},[676],{"categories":4194},[676],{"categories":4196},[762],{"categories":4198},[702],{"categories":4200},[717],{"categories":4202},[702],{"categories":4204},[],{"categories":4206},[],{"categories":4208},[],{"categories":4210},[679],{"categories":4212},[702],{"categories":4214},[682],{"categories":4216},[685],{"categories":4218},[685],{"categories":4220},[702],{"categories":4222},[679],{"categories":4224},[717],{"categories":4226},[702],{"categories":4228},[685],{"categories":4230},[702],{"categories":4232},[685],{"categories":4234},[717],{"categories":4236},[717],{"categories":4238},[676],{"categories":4240},[717],{"categories":4242},[685],{"categories":4244},[666],{"categories":4246},[685],{"categories":4248},[685],{"categories":4250},[685],{"categories":4252},[685],{"categories":4254},[],{"categories":4256},[671],{"categories":4258},[],{"categories":4260},[762],{"categories":4262},[702],{"categories":4264},[702],{"categories":4266},[],{"categories":4268},[],{"categories":4270},[],{"categories":4272},[702],{"categories":4274},[671],{"categories":4276},[702],{"categories":4278},[702],{"categories":4280},[],{"categories":4282},[702],{"categories":4284},[682],{"categories":4286},[702],{"categories":4288},[702],{"categories":4290},[702],{"categories":4292},[],{"categories":4294},[],{"categories":4296},[],{"categories":4298},[1027],{"categories":4300},[1027],{"categories":4302},[666],{"categories":4304},[676],{"categories":4306},[666,679],{"categories":4308},[702],{"categories":4310},[671],{"categories":4312},[],{"categories":4314},[682],{"categories":4316},[762],{"categories":4318},[702],{"categories":4320},[685],{"categories":4322},[702],{"categories":4324},[],{"categories":4326},[762],{"categories":4328},[1027],{"categories":4330},[676],{"categories":4332},[666],{"categories":4334},[1027],{"categories":4336},[676],{"categories":4338},[717],{"categories":4340},[676],{"categories":4342},[717],{"categories":4344},[702],{"categories":4346},[717],{"categories":4348},[717],{"categories":4350},[685],{"categories":4352},[762],{"categories":4354},[702],{"categories":4356},[679],{"categories":4358},[],{"categories":4360},[702],{"categories":4362},[682],{"categories":4364},[762],{"categories":4366},[666],{"categories":4368},[702],{"categories":4370},[762],{"categories":4372},[717],{"categories":4374},[702],{"categories":4376},[702],{"categories":4378},[762],{"categories":4380},[702],{"categories":4382},[717],{"categories":4384},[702],{"categories":4386},[],{"categories":4388},[702],{"categories":4390},[702],{"categories":4392},[702],{"categories":4394},[702],{"categories":4396},[],{"categories":4398},[676],{"categories":4400},[1027],{"categories":4402},[],{"categories":4404},[],{"categories":4406},[702],{"categories":4408},[666],{"categories":4410},[679],{"categories":4412},[666],{"categories":4414},[666],{"categories":4416},[676],{"categories":4418},[],{"categories":4420},[702],{"categories":4422},[671],{"categories":4424},[702],{"categories":4426},[702],{"categories":4428},[],{"categories":4430},[676],{"categories":4432},[671],{"categories":4434},[702,1027],{"categories":4436},[676,1027],{"categories":4438},[1027],{"categories":4440},[702],{"categories":4442},[676],{"categories":4444},[676],{"categories":4446},[685],{"categories":4448},[685],{"categories":4450},[685],{"categories":4452},[702],{"categories":4454},[682],{"categories":4456},[676],{"categories":4458},[],{"categories":4460},[1027],{"categories":4462},[],{"categories":4464},[1027],{"categories":4466},[1027],{"categories":4468},[666],{"categories":4470},[676],{"categories":4472},[],{"categories":4474},[1027],{"categories":4476},[702],{"categories":4478},[671],{"categories":4480},[702],{"categories":4482},[682],{"categories":4484},[685],{"categories":4486},[685],{"categories":4488},[685],{"categories":4490},[1027],{"categories":4492},[],{"categories":4494},[],{"categories":4496},[],{"categories":4498},[702],{"categories":4500},[685],{"categories":4502},[702],{"categories":4504},[685],{"categories":4506},[1027],{"categories":4508},[1027],{"categories":4510},[702],{"categories":4512},[676],{"categories":4514},[],{"categories":4516},[702],{"categories":4518},[702],{"categories":4520},[702],{"categories":4522},[],{"categories":4524},[],{"categories":4526},[1027],{"categories":4528},[1027],{"categories":4530},[702,1027],{"categories":4532},[676],{"categories":4534},[676],{"categories":4536},[676],{"categories":4538},[676],{"categories":4540},[676],{"categories":4542},[676],{"categories":4544},[],{"categories":4546},[685],{"categories":4548},[702],{"categories":4550},[685],{"categories":4552},[679],{"categories":4554},[702],{"categories":4556},[1114],{"categories":4558},[1114],{"categories":4560},[676],{"categories":4562},[685],{"categories":4564},[],{"categories":4566},[676],{"categories":4568},[702],{"categories":4570},[],{"categories":4572},[682],{"categories":4574},[],{"categories":4576},[702],{"categories":4578},[676],{"categories":4580},[671],{"categories":4582},[702],{"categories":4584},[],{"categories":4586},[],{"categories":4588},[682],{"categories":4590},[682],{"categories":4592},[717],{"categories":4594},[682],{"categories":4596},[676],{"categories":4598},[],{"categories":4600},[676],{"categories":4602},[671],{"categories":4604},[702],{"categories":4606},[702],{"categories":4608},[],{"categories":4610},[702],{"categories":4612},[717],{"categories":4614},[702],{"categories":4616},[],{"categories":4618},[762],{"categories":4620},[685],{"categories":4622},[685],{"categories":4624},[666],{"categories":4626},[666],{"categories":4628},[666],{"categories":4630},[676],{"categories":4632},[666],{"categories":4634},[676],{"categories":4636},[1027],{"categories":4638},[1114],{"categories":4640},[671],{"categories":4642},[671],{"categories":4644},[671],{"categories":4646},[1027],{"categories":4648},[671,666],{"categories":4650},[762],{"categories":4652},[676],{"categories":4654},[],{"categories":4656},[702],{"categories":4658},[],{"categories":4660},[685],{"categories":4662},[762],{"categories":4664},[682],{"categories":4666},[685],{"categories":4668},[717],{"categories":4670},[],{"categories":4672},[676],{"categories":4674},[],{"categories":4676},[1114],{"categories":4678},[],{"categories":4680},[682],{"categories":4682},[682],{"categories":4684},[762],{"categories":4686},[],{"categories":4688},[702],{"categories":4690},[762],{"categories":4692},[],{"categories":4694},[702],{"categories":4696},[702],{"categories":4698},[],{"categories":4700},[717],{"categories":4702},[702],{"categories":4704},[],{"categories":4706},[702],{"categories":4708},[],{"categories":4710},[],{"categories":4712},[676],{"categories":4714},[676],{"categories":4716},[],{"categories":4718},[685],{"categories":4720},[685],{"categories":4722},[685],{"categories":4724},[702,676],{"categories":4726},[676],{"categories":4728},[676],{"categories":4730},[676],{"categories":4732},[762],{"categories":4734},[762],{"categories":4736},[],{"categories":4738},[671],{"categories":4740},[702],{"categories":4742},[762],{"categories":4744},[762],{"categories":4746},[671],{"categories":4748},[666],{"categories":4750},[676],{"categories":4752},[685],{"categories":4754},[702],{"categories":4756},[702],{"categories":4758},[676],{"categories":4760},[685],{"categories":4762},[676],{"categories":4764},[702],{"categories":4766},[679],{"categories":4768},[],{"categories":4770},[702],{"categories":4772},[],{"categories":4774},[702],{"categories":4776},[702],{"categories":4778},[685],{"categories":4780},[],{"categories":4782},[762],{"categories":4784},[702],{"categories":4786},[676],{"categories":4788},[676],{"categories":4790},[685],{"categories":4792},[717],{"categories":4794},[717],{"categories":4796},[671],{"categories":4798},[702],{"categories":4800},[676],{"categories":4802},[],{"categories":4804},[676],{"categories":4806},[702],{"categories":4808},[671],{"categories":4810},[702],{"categories":4812},[702],{"categories":4814},[702],{"categories":4816},[676],{"categories":4818},[762],{"categories":4820},[702],{"categories":4822},[682],{"categories":4824},[702],{"categories":4826},[702],{"categories":4828},[702],{"categories":4830},[702],{"categories":4832},[],{"categories":4834},[702],{"categories":4836},[762],{"categories":4838},[682],{"categories":4840},[702],{"categories":4842},[682],{"categories":4844},[],{"categories":4846},[],{"categories":4848},[],{"categories":4850},[702],{"categories":4852},[],{"categories":4854},[],{"categories":4856},[],{"categories":4858},[],{"categories":4860},[676],{"categories":4862},[717],{"categories":4864},[676],{"categories":4866},[676],{"categories":4868},[685],{"categories":4870},[666],{"categories":4872},[702],{"categories":4874},[702],{"categories":4876},[702],{"categories":4878},[666],{"categories":4880},[717],{"categories":4882},[],{"categories":4884},[762],{"categories":4886},[679],{"categories":4888},[702],{"categories":4890},[682],{"categories":4892},[717],{"categories":4894},[717],{"categories":4896},[1114],{"categories":4898},[676],{"categories":4900},[702],{"categories":4902},[702],{"categories":4904},[717],{"categories":4906},[702],{"categories":4908},[],{"categories":4910},[],{"categories":4912},[1027],{"categories":4914},[682],{"categories":4916},[717],{"categories":4918},[702],{"categories":4920},[671],{"categories":4922},[717],{"categories":4924},[666],{"categories":4926},[676],{"categories":4928},[676],{"categories":4930},[671],{"categories":4932},[702],{"categories":4934},[],{"categories":4936},[],{"categories":4938},[],{"categories":4940},[702],{"categories":4942},[],{"categories":4944},[671],{"categories":4946},[],{"categories":4948},[702],{"categories":4950},[],{"categories":4952},[671],{"categories":4954},[676],{"categories":4956},[702],{"categories":4958},[1027],{"categories":4960},[702],{"categories":4962},[717],{"categories":4964},[702],{"categories":4966},[717],{"categories":4968},[717],{"categories":4970},[],{"categories":4972},[],{"categories":4974},[717],{"categories":4976},[717],{"categories":4978},[717],{"categories":4980},[],{"categories":4982},[717],{"categories":4984},[676],{"categories":4986},[676],{"categories":4988},[],{"categories":4990},[702],{"categories":4992},[679],{"categories":4994},[762],{"categories":4996},[702],{"categories":4998},[],{"categories":5000},[717],{"categories":5002},[702],{"categories":5004},[1114],{"categories":5006},[717],{"categories":5008},[717],{"categories":5010},[679],{"categories":5012},[685],{"categories":5014},[685],{"categories":5016},[],{"categories":5018},[685],{"categories":5020},[702],{"categories":5022},[],{"categories":5024},[],{"categories":5026},[676],{"categories":5028},[],{"categories":5030},[676],{"categories":5032},[676],{"categories":5034},[671],{"categories":5036},[702],{"categories":5038},[671],{"categories":5040},[717],{"categories":5042},[671],{"categories":5044},[685],{"categories":5046},[685],{"categories":5048},[685],{"categories":5050},[671],{"categories":5052},[702],{"categories":5054},[676],{"categories":5056},[1027],{"categories":5058},[666],{"categories":5060},[1027],{"categories":5062},[1027],{"categories":5064},[685],{"categories":5066},[1027],{"categories":5068},[1027],[5070,5155,5219,5583],{"id":5071,"title":5072,"ai":5073,"body":5078,"categories":5121,"created_at":639,"date_modified":639,"description":61,"extension":641,"faq":639,"featured":642,"kicker_label":639,"meta":5122,"navigation":644,"path":5141,"published_at":5142,"question":639,"scraped_at":5143,"seo":5144,"sitemap":5145,"source_id":5146,"source_name":5147,"source_type":5148,"source_url":5149,"stem":5150,"tags":5151,"thumbnail_url":639,"tldr":5152,"tweet":639,"unknown_tags":5153,"__hash__":5154},"summaries\u002Fsummaries\u002Fclaude-s-agentic-os-chains-skills-into-full-workfl-summary.md","Claude's Agentic OS Chains Skills into Full Workflows",{"provider":7,"model":8,"input_tokens":5074,"output_tokens":5075,"processing_time_ms":5076,"cost_usd":5077},6805,1720,21261,0.00171415,{"type":14,"value":5079,"toc":5116},[5080,5084,5087,5090,5093,5097,5100,5103,5107,5110,5113],[17,5081,5083],{"id":5082},"agentic-foundations-tools-planning-and-context","Agentic Foundations: Tools, Planning, and Context",[22,5085,5086],{},"Claude achieves agentic behavior through three pillars: tool use for invoking external capabilities like code execution, web search, APIs, and databases; multi-step planning to decompose goals into sequential or parallel sub-tasks; and persistent context to carry information across steps. This shifts Claude from single-response assistant to autonomous executor that handles errors, makes decisions, and delivers complete outcomes.",[22,5088,5089],{},"In Claude Code, a terminal-based agent for development, skills include built-in functions (file system access, bash execution, code interpretation, web browsing), tool integrations, MCP (Model Context Protocol) for structured external communication, and sub-agent delegation. Claude selects skills dynamically—for instance, debugging involves reading logs, searching code, running tests, web lookups, editing files, and re-testing—coordinating outputs sequentially without predefined scripts.",[22,5091,5092],{},"Shared brand context injects persistent details like tone guidelines, business priorities, and task state into every skill call, ensuring coherence. Memory types include in-context (current window), external (retrieved from databases\u002Fvector stores), and episodic (past session summaries), preventing redundant work across runs.",[17,5094,5096],{"id":5095},"chaining-patterns-for-robust-workflows","Chaining Patterns for Robust Workflows",[22,5098,5099],{},"Skill chaining passes one skill's output directly as input to the next, enabling workflows like querying CRM for uncontacted leads, drafting personalized emails, and sending them—all in one goal-based instruction. Conditional branching lets Claude evaluate mid-flow decisions, such as skipping emails for recent replies or retrying failed tests, using reasoning instead of hard-coded rules.",[22,5101,5102],{},"Loops handle iteration over lists, like summarizing all quarterly contracts or pulling competitor pricing per product, without explicit loop definitions. Error handling is adaptive: Claude reasons on failures (e.g., API errors), choosing retries, alternatives, skips, or human escalation, making workflows more resilient than rigid automations.",[17,5104,5106],{"id":5105},"multi-agent-orchestration-and-business-impact","Multi-Agent Orchestration and Business Impact",[22,5108,5109],{},"Claude acts as a kernel-like orchestrator, breaking goals into sub-tasks, delegating to specialized agents (e.g., vision models for images, code models for execution), synthesizing results, and parallelizing for speed. It can also serve as a sub-agent via MCP in larger systems.",[22,5111,5112],{},"Real workflows include: content pipelines (research keyword, outline, draft with brand voice, format for CMS—half-day task to 10 minutes); support triage (classify tickets, check CRM history, draft\u002Froute responses); competitive intel (scrape sites, compare pricing to prior data via memory, report via Slack). SoftProdigy plugin (@softprodigy-ai\u002Fagent npm package) adds 120+ pre-built skills (e.g., HubSpot updates, social images) with built-in auth, retries, and rate limiting, plus no-code builder for workflows—reducing setup overhead.",[22,5114,5115],{},"This architecture scales complexity without single-agent bottlenecks, specializing roles and enabling production AI automation for 2025 business operations.",{"title":61,"searchDepth":74,"depth":74,"links":5117},[5118,5119,5120],{"id":5082,"depth":74,"text":5083},{"id":5095,"depth":74,"text":5096},{"id":5105,"depth":74,"text":5106},[702],{"content_references":5123,"triage":5138},[5124,5129,5133,5136],{"type":5125,"title":5126,"author":5127,"context":5128},"tool","Claude Code","Anthropic","mentioned",{"type":5125,"title":5130,"publisher":5131,"context":5132},"SoftProdigy Agent Skills Plugin","SoftProdigy","recommended",{"type":5134,"title":5135,"author":5127,"context":5128},"other","Model Context Protocol (MCP)",{"type":5134,"title":5137,"author":5127,"context":5128},"Anthropic’s documentation on building agents",{"relevance":92,"novelty":86,"quality":86,"actionability":86,"composite":5139,"reasoning":5140},4.35,"Category: AI Automation. The article provides in-depth insights into how Claude's agentic operating system can automate complex workflows, addressing the audience's need for practical applications of AI in product development. It discusses specific features like skill chaining and error handling, which are directly applicable for builders looking to implement AI-driven automation.","\u002Fsummaries\u002Fclaude-s-agentic-os-chains-skills-into-full-workfl-summary","2026-05-05 16:01:01","2026-05-06 16:13:48",{"title":5072,"description":61},{"loc":5141},"be6c94bf724c728d","Towards AI","article","https:\u002F\u002Fpub.towardsai.net\u002Fwhat-is-claudes-agentic-operating-system-48ec4834e2cc?source=rss----98111c9905da---4","summaries\u002Fclaude-s-agentic-os-chains-skills-into-full-workfl-summary",[657,656,659,658],"Claude becomes an agentic operating system by combining tool use, multi-step planning, and persistent context to orchestrate skills like file access, APIs, and sub-agents, automating business processes end-to-end without manual intervention.",[],"5eAtWS4Jt4YuJ8L83b_EBnP_k7bIqgdA71ekMXVtvGg",{"id":5156,"title":5157,"ai":5158,"body":5163,"categories":5191,"created_at":639,"date_modified":639,"description":61,"extension":641,"faq":639,"featured":642,"kicker_label":639,"meta":5192,"navigation":644,"path":5206,"published_at":5207,"question":639,"scraped_at":5208,"seo":5209,"sitemap":5210,"source_id":5211,"source_name":5212,"source_type":5148,"source_url":5213,"stem":5214,"tags":5215,"thumbnail_url":639,"tldr":5216,"tweet":639,"unknown_tags":5217,"__hash__":5218},"summaries\u002Fsummaries\u002F7-signs-to-switch-browser-ai-to-desktop-agents-summary.md","7 Signs to Switch Browser AI to Desktop Agents",{"provider":7,"model":8,"input_tokens":5159,"output_tokens":5160,"processing_time_ms":5161,"cost_usd":5162},7562,1400,21503,0.00218975,{"type":14,"value":5164,"toc":5186},[5165,5169,5172,5176,5179,5183],[17,5166,5168],{"id":5167},"multi-file-analysis-and-persistent-updates-beat-browser-limits","Multi-File Analysis and Persistent Updates Beat Browser Limits",[22,5170,5171],{},"Browser AI caps at 3-10 files per chat (fewer for large files), risking errors on 10-20 files like invoices or client meeting notes. Desktop agents like Claude Cowork or CodeX process entire folders, extracting insights (e.g., rename expenses, populate Excel trackers) without limits. For weekly dashboard\u002FExcel updates, avoid degrading intelligence in long browser threads—use a dedicated folder where fresh chats access persistent artifacts, ensuring high performance as new data integrates seamlessly.",[17,5173,5175],{"id":5174},"sub-agents-self-improvement-and-long-running-tasks-unlock-depth","Sub-Agents, Self-Improvement, and Long-Running Tasks Unlock Depth",[22,5177,5178],{},"Demand holistic research? Browser AI sequences steps linearly; desktop spawns sub-agents for parallel dives (e.g., separate AIs per competitor, synthesizing holistic reports). Build self-improving agents by having them write\u002Fupdate lessons-learned files or rules in-folder—feedback like \"avoid this error\" persists across fresh chats, turning tools into compounding assets. Complex jobs (30s-5min typical; 30min+ possible) run uninterrupted on desktop, skipping browser's repeated \"continue\" prompts (e.g., Claude Opus).",[17,5180,5182],{"id":5181},"custom-connectors-and-scheduling-enable-autonomy","Custom Connectors and Scheduling Enable Autonomy",[22,5184,5185],{},"No pre-built connector for your system? Desktop AI builds it: describe target\u002Faction, provide API key (fetch via Atlas browser if needed), and it codes read\u002Fwrite access—no coding required. Schedule recurring tasks (e.g., Mondays 9am, hourly) far more reliably than browser options (ChatGPT limited; Claude browser lacks). Three universal signs hit most: recurring file updates, self-improving rules, scheduled runs. Always \"yes and\"—browser for sessions, desktop for systems preserving state across time.",{"title":61,"searchDepth":74,"depth":74,"links":5187},[5188,5189,5190],{"id":5167,"depth":74,"text":5168},{"id":5174,"depth":74,"text":5175},{"id":5181,"depth":74,"text":5182},[702],{"content_references":5193,"triage":5203},[5194,5197,5199,5201],{"type":5134,"title":5195,"url":5196,"context":5128},"Presentation (with prompts)","https:\u002F\u002Fd-squared70.github.io\u002F7-Signs-You-ve-Outgrown-ChatGPT-and-What-to-Use-Next-\u002F",{"type":5125,"title":5198,"context":5132},"Claude Cowork",{"type":5125,"title":5200,"context":5132},"CodeX",{"type":5125,"title":5202,"context":5128},"Atlas browser",{"relevance":86,"novelty":80,"quality":86,"actionability":86,"composite":5204,"reasoning":5205},3.8,"Category: AI Automation. The article discusses the advantages of using desktop AI agents over browser-based ones, addressing specific pain points like handling multiple files and automating tasks, which is relevant for product builders. It provides actionable insights on when to switch to desktop agents, making it practical for the audience.","\u002Fsummaries\u002F7-signs-to-switch-browser-ai-to-desktop-agents-summary","2026-05-04 18:00:31","2026-05-05 16:05:08",{"title":5157,"description":61},{"loc":5206},"679bde90433bb55b","Dylan Davis","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=NYCMcWEk0Dg","summaries\u002F7-signs-to-switch-browser-ai-to-desktop-agents-summary",[658,657,659,656],"Upgrade from browser ChatGPT\u002FClaude to desktop Claude Cowork\u002FCodeX when handling 10+ files, recurring file updates, self-improving tasks, or scheduled automation—keeps AI intelligence high via folder persistence without long threads.",[],"OgobEEKDdQA2r1dQmrM0fQmahi4iOU5SkMCmtBywa1M",{"id":5220,"title":5221,"ai":5222,"body":5227,"categories":5556,"created_at":639,"date_modified":639,"description":61,"extension":641,"faq":639,"featured":642,"kicker_label":639,"meta":5557,"navigation":644,"path":5570,"published_at":5571,"question":639,"scraped_at":5572,"seo":5573,"sitemap":5574,"source_id":5575,"source_name":5576,"source_type":5148,"source_url":5577,"stem":5578,"tags":5579,"thumbnail_url":639,"tldr":5580,"tweet":639,"unknown_tags":5581,"__hash__":5582},"summaries\u002Fsummaries\u002Feval-driven-skills-boost-agent-performance-on-supa-summary.md","Eval-Driven Skills: Boost Agent Performance on Supabase",{"provider":7,"model":8,"input_tokens":5223,"output_tokens":5224,"processing_time_ms":5225,"cost_usd":5226},8616,2988,40179,0.00319455,{"type":14,"value":5228,"toc":5550},[5229,5233,5251,5261,5267,5275,5286,5295,5299,5302,5305,5311,5367,5370,5376,5380,5383,5386,5422,5428,5434,5437,5442,5453,5458,5469,5480,5486,5492,5494,5520,5525],[17,5230,5232],{"id":5231},"agent-skills-structure-for-progressive-disclosure","Agent Skills Structure for Progressive Disclosure",[22,5234,5235,5236,5239,5240,5242,5243,5246,5247,5250],{},"Agent skills are folders containing a required ",[39,5237,5238],{},"skill.md"," file and optional references\u002Fscripts, designed to provide targeted context without bloating the agent's initial context window. The ",[39,5241,5238],{}," uses YAML frontmatter with ",[39,5244,5245],{},"name"," and ",[39,5248,5249],{},"description"," fields—these load first as an \"envelope,\" enabling progressive disclosure: the agent decides when to fetch full content based on need.",[22,5252,5253,5254,5256,5257,5260],{},"Inside ",[39,5255,5238],{},", add instructions, workflows, or links to files in a ",[39,5258,5259],{},"reference\u002F"," folder (Markdown for docs, scripts like Bash\u002FPython for actions). This forms a graph—reference files can link others—acting like a book's index linking chapters. Scripts run locally (tied to your OS env, e.g., Linux\u002FMac compatible), unlike remote MCP tools.",[22,5262,5263,5266],{},[28,5264,5265],{},"Key principle",": Skills deliver custom info\u002Fworkflows too verbose for MCP tool descriptions. Example structure:",[56,5268,5273],{"className":5269,"code":5271,"language":5272},[5270],"language-text","---\nname: Department Stats Skill\ndescription: Guides creating SQL views for dept salary averages and counts from profiles table.\n---\nTo compute department stats:\n1. Query `profiles` table.\n2. GROUP BY `department`.\n3. AVG(`salary`), COUNT(*).\n\nReference: [exact SQL template](.\u002Freference\u002Fdept-stats.sql)\n","text",[39,5274,5271],{"__ignoreMap":61},[22,5276,5277,5278,5281,5282,5285],{},"Reference files are plain Markdown or scripts, e.g., ",[39,5279,5280],{},"dept-stats.sql"," with ",[39,5283,5284],{},"CREATE OR REPLACE VIEW department_stats AS SELECT department, AVG(salary), COUNT(*) FROM profiles GROUP BY department;",". This setup teaches agents precise patterns, avoiding hallucinated SQL.",[22,5287,5288,5291,5292,5294],{},[28,5289,5290],{},"Common mistake",": Overloading ",[39,5293,5238],{}," content—keep it concise; offload details to references. Bad pattern: Vague descriptions like \"DB tools\" lead to ignored skills. Good: Specific triggers, e.g., \"Use when querying aggregates by department.\"",[17,5296,5298],{"id":5297},"skills-vs-mcp-tools-complementary-for-integrations","Skills vs. MCP Tools: Complementary for Integrations",[22,5300,5301],{},"Skills ≠ MCP tools. MCP (Multi-Context Provider) servers expose remote, env-agnostic tools (e.g., Supabase's 20+ tools: list tables, exec SQL, apply migrations, run DB advisor). Agent calls them directly—no local setup.",[22,5303,5304],{},"Skills augment with context: Define workflows (e.g., \"Always test views post-creation\"), docs, or local scripts. Use MCP for integrations (no bash access); skills for everything else.",[22,5306,5307,5310],{},[28,5308,5309],{},"Trade-offs",":",[5312,5313,5314,5330],"table",{},[5315,5316,5317],"thead",{},[5318,5319,5320,5324,5327],"tr",{},[5321,5322,5323],"th",{},"Aspect",[5321,5325,5326],{},"Skills",[5321,5328,5329],{},"MCP Tools",[5331,5332,5333,5345,5356],"tbody",{},[5318,5334,5335,5339,5342],{},[5336,5337,5338],"td",{},"Env",[5336,5340,5341],{},"Local (OS-specific)",[5336,5343,5344],{},"Remote\u002Fserver-side",[5318,5346,5347,5350,5353],{},[5336,5348,5349],{},"Purpose",[5336,5351,5352],{},"Context\u002Fworkflows",[5336,5354,5355],{},"Actions\u002Ftools",[5318,5357,5358,5361,5364],{},[5336,5359,5360],{},"Loading",[5336,5362,5363],{},"Progressive (frontmatter first)",[5336,5365,5366],{},"Full desc in context",[22,5368,5369],{},"In Supabase workflows, combine: MCP for DB ops, skills for schema-specific guidance. Misconception: Skills replace MCP—false; they stack for DAX (agent dev experience).",[22,5371,5372,5375],{},[28,5373,5374],{},"Pitfall",": Scripts fail cross-OS (e.g., Windows-incompatible Bash). Solution: Prefer MCP for portability; reserve scripts for local prototyping.",[17,5377,5379],{"id":5378},"eval-driven-development-define-metrics-test-iterate","Eval-Driven Development: Define Metrics, Test, Iterate",[22,5381,5382],{},"Test skills like code: Unit (manual runs), integration (evals), E2E (full workflows). With LLMs, use evals—nondeterministic tests evaluating reasoning\u002Ftools\u002Fsteps, not exact output.",[22,5384,5385],{},"Adopt OpenAI's framework:",[5387,5388,5389,5395,5404,5410,5416],"ol",{},[600,5390,5391,5394],{},[28,5392,5393],{},"Define metrics",": What \"good\" means, e.g., \"Correct SQL syntax (100%), Uses GROUP BY (90%), Calls apply_migration tool (80%).\" Tailor to skill: Forwarding to docs? Workflow adherence?",[600,5396,5397,5400,5401,5403],{},[28,5398,5399],{},"Build skill",": Write ",[39,5402,5238],{},"\u002Frefs\u002Fscripts.",[600,5405,5406,5409],{},[28,5407,5408],{},"Run evals",": Input (task prompt), expected (tools\u002Fsteps\u002Foutput). Use Braintrust for observability—logs agent traces, scores metrics (pass\u002Ffail, LLM-as-judge).",[600,5411,5412,5415],{},[28,5413,5414],{},"Grade\u002FInspect",": Check tool calls, reasoning. Nondeterministic? Run 10-50x, avg scores.",[600,5417,5418,5421],{},[28,5419,5420],{},"Iterate",": Tweak (e.g., add examples), re-run.",[22,5423,5424,5427],{},[28,5425,5426],{},"Braintrust setup",": Platform for evals; defines scenarios (input\u002Fexpected), runs agent, visualizes traces. Like Datadog for agents. CEO quote (podcast): Emphasizes full behavior picture.",[22,5429,5430,5433],{},[28,5431,5432],{},"Manual testing baseline",": Prompt agent (e.g., Claude) on Supabase demo app: \"Create department_stats view: avg salary, count by dept.\" Without skill: Agent lists tables, crafts wrong SQL (e.g., joins wrong table), applies migration—view created but buggy (misses salary avg).",[22,5435,5436],{},"With skill: Agent references skill, uses exact template—correct view. App query shows dept breakdowns.",[22,5438,5439,5310],{},[28,5440,5441],{},"Quality criteria",[597,5443,5444,5447,5450],{},[600,5445,5446],{},"Skill used? (Trace shows load).",[600,5448,5449],{},"Performance delta: Baseline 40% success → Skill 85%.",[600,5451,5452],{},"Holds under variants: Bad instructions drop to 20%; precise ones sustain.",[22,5454,5455,5310],{},[28,5456,5457],{},"Failure modes",[597,5459,5460,5463,5466],{},[600,5461,5462],{},"Unused: Vague desc.",[600,5464,5465],{},"Misleading: Conflicts MCP docs.",[600,5467,5468],{},"Fragile: No examples, fails edge cases.",[22,5470,5471,5472,5475,5476,5479],{},"Demo repo (hudripppn\u002Fimprove-skills-workshop-aieurope): Next.js app (performance reviews on Supabase Postgres), MCP.json for local server, seeded DB (employees\u002Fmanagers\u002FHR). Setup: ",[39,5473,5474],{},"npx @supabase\u002Fcreate-supabase",", ",[39,5477,5478],{},"npm run dev",". Eval harness at end.",[22,5481,5482,5485],{},[28,5483,5484],{},"Exercise",": Clone repo, baseline agent on reports view, add skill, run 20 evals via Braintrust—tune till 90%+.",[22,5487,5488,5491],{},[28,5489,5490],{},"Prerequisites",": Agent familiarity (Claude\u002FCursor), Supabase basics (Postgres BaaS: DB\u002Fauth\u002Fstorage\u002Fedge funcs). Fits mid-workflow: After agent prototyping, before prod.",[17,5493,595],{"id":594},[597,5495,5496,5499,5502,5505,5508,5511,5514,5517],{},[600,5497,5498],{},"Start every skill with precise frontmatter description triggering use—vague ones get ignored.",[600,5500,5501],{},"Combine skills (context) + MCP (tools) for Supabase: Skills guide workflows, MCP executes.",[600,5503,5504],{},"Eval-driven: Define 3-5 metrics upfront (e.g., tool calls, SQL correctness) before writing.",[600,5506,5507],{},"Use Braintrust for traces: Run 20+ evals\u002Fiteration; aim for 80%+ delta over baseline.",[600,5509,5510],{},"Test bad patterns: Overload content, poor refs—quantify drops to validate fixes.",[600,5512,5513],{},"Progressive disclosure principle: Frontmatter envelope + refs = scalable context.",[600,5515,5516],{},"Local scripts? Prototype only—migrate to MCP for prod portability.",[600,5518,5519],{},"Iterate cycle: Metrics → Skill → Evals → Grade → Repeat, like TDD for agents.",[22,5521,5522,5310],{},[28,5523,5524],{},"Notable Quotes",[5387,5526,5527,5534,5537,5544,5547],{},[600,5528,5529,5530,5533],{},"\"Progressive disclosure is basically when the agent... load",[65,5531,5532],{},"s"," the exact amounts of information that allows the agent to choose to load the rest... once it actually needs it.\" (Explaining skill.md design for context efficiency.)",[600,5535,5536],{},"\"Skills actually just provide more context to your agent... everything that you don't have space to define on the MCP tools descriptions you can define them on skills.\" (Clarifying skills' role vs. tools.)",[600,5538,5539,5540,5543],{},"\"You can basically do exactly the same ",[65,5541,5542],{},"as code testing",". ... since we have an LLM in the loop, you'll have something called evaluations.\" (Mapping traditional testing to agent evals.)",[600,5545,5546],{},"\"The core loop of the workshop is simple: write a Skill, run evals, inspect results, and iterate.\" (From description; distills the method.)",[600,5548,5549],{},"\"If you're building anything that it's an integration, you should use MCP... skills actually just provide more context.\" (Practical usage rule.)",{"title":61,"searchDepth":74,"depth":74,"links":5551},[5552,5553,5554,5555],{"id":5231,"depth":74,"text":5232},{"id":5297,"depth":74,"text":5298},{"id":5378,"depth":74,"text":5379},{"id":594,"depth":74,"text":595},[],{"content_references":5558,"triage":5567},[5559,5563,5565],{"type":5134,"title":5560,"author":5561,"context":5562},"Systematically evaluate agent skills","OpenAI","cited",{"type":5125,"title":5564,"context":5132},"Braintrust",{"type":5125,"title":5566,"context":5128},"Supabase MCP server",{"relevance":92,"novelty":86,"quality":86,"actionability":92,"composite":5568,"reasoning":5569},4.55,"Category: AI & LLMs. The article provides a detailed framework for developing agent skills using eval-driven development, addressing practical applications for AI-powered product builders. It includes specific examples and a clear structure for implementing skills, making it immediately actionable.","\u002Fsummaries\u002Feval-driven-skills-boost-agent-performance-on-supa-summary","2026-05-04 16:00:06","2026-05-05 16:04:36",{"title":5221,"description":61},{"loc":5570},"cfb75be1962e65c9","AI Engineer","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=GmAQKINjv1E","summaries\u002Feval-driven-skills-boost-agent-performance-on-supa-summary",[657,656,658,659],"Use eval-driven development to craft agent skills: define metrics first, structure with progressive disclosure in skill.md, test via Braintrust evals on Supabase workflows, iterate to fix failure modes like unused skills or bad instructions.",[],"JJPR_gxZ0aR_c7yLHXoE86AU8jKziCErrndQ9Rb8sI0",{"id":5584,"title":5585,"ai":5586,"body":5591,"categories":5638,"created_at":639,"date_modified":639,"description":61,"extension":641,"faq":639,"featured":642,"kicker_label":639,"meta":5639,"navigation":644,"path":5653,"published_at":5654,"question":639,"scraped_at":5655,"seo":5656,"sitemap":5657,"source_id":5658,"source_name":5659,"source_type":5148,"source_url":5660,"stem":5661,"tags":5662,"thumbnail_url":639,"tldr":5663,"tweet":639,"unknown_tags":5664,"__hash__":5665},"summaries\u002Fsummaries\u002F6-projects-to-go-from-ai-user-to-builder-in-2026-summary.md","6 Projects to Go from AI User to Builder in 2026",{"provider":7,"model":8,"input_tokens":5587,"output_tokens":5588,"processing_time_ms":5589,"cost_usd":5590},6182,2085,36370,0.00225655,{"type":14,"value":5592,"toc":5633},[5593,5597,5604,5607,5610,5614,5617,5620,5624,5627,5630],[17,5594,5596],{"id":5595},"use-skills-and-rag-for-efficient-context-handling","Use Skills and RAG for Efficient Context Handling",[22,5598,5599,5600,5603],{},"Start with Skills, the highest-leverage project: create a folder with a ",[39,5601,5602],{},"skills.md"," file containing YAML metadata (name and description fields only) followed by markdown instructions. Claude reads just the description first to check relevance via progressive disclosure—loading full instructions and referenced files only if needed—avoiding context window bloat even with 50 skills. To build one, pick a weekly task like status updates, prompt Claude Coder or Anti-Gravity to generate it from plain English instructions. This automates repetitive context explanation without engineering.",[22,5605,5606],{},"Next, implement RAG to ground LLMs in your data: split documents into chunks (a few paragraphs), embed via an embedding model into vectors where semantic similarity clusters concepts (e.g., \"hypertension\" near \"high blood pressure\" despite no shared words), store in a vector index. For queries, embed the question, retrieve top 5-10 matches, and feed to LLM for grounded generation. Unlike NotebookLM (a destination tool), RAG is a reusable component for agents or apps. Use it to make proprietary data queryable, as base models lack your specifics.",[22,5608,5609],{},"These two deliver quick wins: Skills for agent instructions, RAG for data retrieval, forming the base for production AI.",[17,5611,5613],{"id":5612},"expose-tools-via-mcp-and-wire-voice-agents","Expose Tools via MCP and Wire Voice Agents",[22,5615,5616],{},"Build an MCP (Model Context Protocol) server to universalize access: mark Python functions (e.g., your RAG retriever) with fastMCP SDK, which handles plumbing so any MCP-compatible client (Claude Desktop, Cursor, Gemini) calls it. MCP, released by Anthropic in late 2024, saw 970x SDK downloads in 18 months, was donated to Linux Foundation in Dec 2025, and is now standard across ChatGPT, Cursor, Gemini. Transform scripts into shareable infrastructure—wrap RAG in ~few lines, enabling team-wide or agent use.",[22,5618,5619],{},"Layer voice agents on top using Gemini 3.1 Flash Live API (launched March 2026): processes raw audio natively (90+ languages, barge-in interrupts, 90%+ multi-step tool calling from audio), slashing latency from 2-3s (old VAD\u002FSTT\u002FLLM\u002FTTS stack) to under 1s round trips. Speak a query, Gemini calls your MCP\u002FRAG server as a tool, responds aloud—e.g., query company docs while driving. This stacks projects 2-3 for real-time, private voice search impossible two years ago.",[17,5621,5623],{"id":5622},"run-local-models-and-fine-tune-for-control","Run Local Models and Fine-Tune for Control",[22,5625,5626],{},"Run models locally for privacy\u002Foffline\u002Fzero-cost: combine open-weights models (Gemma 4: 2B\u002F4B\u002F26B\u002F31B params; smaller on 8GB laptop RAM), 4-bit quantization (3x memory reduction, tiny quality loss), and Ollama runtime (Docker-like: one command pulls\u002Fruns, exposes API). Point Ollama Gemma at your RAG\u002FMCP for local querying, trading some speed\u002Fquality for no per-token costs.",[22,5628,5629],{},"Fine-tune only for behavior shaping (not knowledge addition): use LoRA (low-rank adaptation) to train a \u003C1% parameter adapter on a frozen base model, customizing voice\u002Fjargon (e.g., legal\u002Fmedical). Skip unless hitting walls—master first five for 90% needs; deeper than others.",[22,5631,5632],{},"Pick 1-2 scariest\u002Fclosest-to-job projects; building end-to-end proves value over prompting.",{"title":61,"searchDepth":74,"depth":74,"links":5634},[5635,5636,5637],{"id":5595,"depth":74,"text":5596},{"id":5612,"depth":74,"text":5613},{"id":5622,"depth":74,"text":5623},[],{"content_references":5640,"triage":5651},[5641,5643,5645,5647,5649],{"type":5125,"title":5642,"context":5128},"fastMCP",{"type":5125,"title":5644,"context":5128},"Ollama",{"type":5125,"title":5646,"context":5128},"Gemini Live API",{"type":5125,"title":5648,"context":5128},"NotebookLM",{"type":5125,"title":5650,"context":5128},"Claude Coder",{"relevance":92,"novelty":86,"quality":86,"actionability":92,"composite":5568,"reasoning":5652},"Category: AI & LLMs. The article provides practical projects that directly address the needs of builders looking to integrate AI into their workflows, such as implementing RAG for data retrieval and using Skills for context handling. It offers specific, actionable steps that can be immediately applied, making it highly relevant and useful for the target audience.","\u002Fsummaries\u002F6-projects-to-go-from-ai-user-to-builder-in-2026-summary","2026-05-03 01:56:32","2026-05-03 16:45:04",{"title":5585,"description":61},{"loc":5653},"b6c581f6a107eb88","AI with Surya","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=gwWlyN1Kl0g","summaries\u002F6-projects-to-go-from-ai-user-to-builder-in-2026-summary",[656,657,658,659],"Build Skills (progressive disclosure folders), RAG (vector search over docs), MCP servers (universal tool adapter), voice agents (Gemini Live), local models (Ollama + Gemma), and fine-tuning (LoRA for behavior) to own AI workflows and stand out at work.",[],"zYJQMWCTxN7qPF0ivVCmZR3lPjKmm0ZWJXetyUWy1FM"]