[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"summary-1ecdad90bfb46efd-agents-sdk-upgrades-harness-sandbox-and-compute-se-summary":3,"summaries-facets-categories":117,"summary-related-1ecdad90bfb46efd-agents-sdk-upgrades-harness-sandbox-and-compute-se-summary":3687},{"id":4,"title":5,"ai":6,"body":13,"categories":67,"created_at":68,"date_modified":68,"description":61,"extension":69,"faq":68,"featured":70,"kicker_label":68,"meta":71,"navigation":99,"path":100,"published_at":68,"question":68,"scraped_at":101,"seo":102,"sitemap":103,"source_id":104,"source_name":105,"source_type":106,"source_url":107,"stem":108,"tags":109,"thumbnail_url":68,"tldr":114,"tweet":68,"unknown_tags":115,"__hash__":116},"summaries\u002Fsummaries\u002F1ecdad90bfb46efd-agents-sdk-upgrades-harness-sandbox-and-compute-se-summary.md","Agents SDK Upgrades Harness, Sandbox, and Compute Separation",{"provider":7,"model":8,"input_tokens":9,"output_tokens":10,"processing_time_ms":11,"cost_usd":12},"openrouter","x-ai\u002Fgrok-4.1-fast",7195,1671,8541,0.0017675,{"type":14,"value":15,"toc":60},"minimark",[16,21,30,37,40,44,47,50,54,57],[17,18,20],"h2",{"id":19},"unlock-frontier-model-capabilities-with-enhanced-harness","Unlock Frontier Model Capabilities with Enhanced Harness",[22,23,24,25,29],"p",{},"Build agents that handle documents, files, commands, and long-horizon tasks by using the Agents SDK's model-native harness, which aligns execution with how models like gpt-5.4 perform best. Install via ",[26,27,28],"code",{},"pip install \"openai-agents>=0.14.0\""," and create a SandboxAgent with instructions like \"Answer using only files in data\u002F. Cite source filenames.\" and a Manifest for workspace entries (e.g., LocalDir for data).",[22,31,32,33,36],{},"The harness integrates primitives like MCP for tool use, skills for progressive disclosure, AGENTS.md for custom instructions, shell for code execution, and apply-patch for file edits. This reduces custom infrastructure needs, improves reliability on complex\u002Fmulti-step tasks, and supports configurable memory and sandbox-aware orchestration. For example, run ",[26,34,35],{},"Runner.run(agent, \"Compare FY2025 revenue...\", run_config=RunConfig(sandbox=SandboxRunConfig(client=UnixLocalSandboxClient())))"," to analyze metrics.md safely, outputting cited comparisons like FY2025 revenue up 26% from FY2024's $98.7M.",[22,38,39],{},"Trade-offs of prior systems—model-agnostic frameworks underutilize models, provider SDKs lack harness visibility, managed APIs limit data access—are addressed, enabling production viability as seen in Oscar Health's clinical records workflow, where agents parse encounter boundaries in long documents for faster patient insights.",[17,41,43],{"id":42},"secure-workspaces-via-native-sandbox-support","Secure Workspaces via Native Sandbox Support",[22,45,46],{},"Provide agents controlled environments for reading\u002Fwriting files, installing dependencies, and running code without piecing together execution layers. Use Manifest to define portable workspaces: mount local files, output directories, and storage like AWS S3, GCS, Azure Blob, Cloudflare R2.",[22,48,49],{},"Built-in clients for Blaxel, Cloudflare, Daytona, E2B, Modal, Runloop, Vercel ensure consistency from prototype to production, giving models predictable inputs\u002Foutputs for organized long-running work. This out-of-the-box layer prevents brittle prototypes from failing in prod.",[17,51,53],{"id":52},"scale-and-secure-with-harness-compute-separation","Scale and Secure with Harness-Compute Separation",[22,55,56],{},"Externalize agent state to protect credentials from prompt-injection\u002Fexfiltration in compute environments. Built-in snapshotting\u002Frehydration resumes runs from checkpoints if sandboxes fail\u002Fexpire, ensuring durability.",[22,58,59],{},"Route subagents to isolated containers, invoke compute only as needed, or parallelize across many for speed—ideal for coordinating diverse tools\u002Fsystems. Pricing uses standard API tokens\u002Ftool calls; Python GA now, TypeScript, code mode, subagents coming soon. Future expansions add sandbox providers and integrations for ecosystem fit.",{"title":61,"searchDepth":62,"depth":62,"links":63},"",2,[64,65,66],{"id":19,"depth":62,"text":20},{"id":42,"depth":62,"text":43},{"id":52,"depth":62,"text":53},[],null,"md",false,{"content_references":72,"triage":94},[73,78,82,85,88,91],{"type":74,"title":75,"url":76,"context":77},"tool","Agents SDK","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents","mentioned",{"type":79,"title":80,"url":81,"context":77},"other","MCP","https:\u002F\u002Fmodelcontextprotocol.io\u002F",{"type":79,"title":83,"url":84,"context":77},"skills","https:\u002F\u002Fagentskills.io\u002F",{"type":79,"title":86,"url":87,"context":77},"AGENTS.md","https:\u002F\u002Fagents.md\u002F",{"type":74,"title":89,"url":90,"context":77},"shell","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools-shell",{"type":74,"title":92,"url":93,"context":77},"apply patch","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools-apply-patch",{"relevance":95,"novelty":96,"quality":96,"actionability":96,"composite":97,"reasoning":98},5,4,4.35,"Category: AI & LLMs. The article provides in-depth insights into the upgraded Agents SDK, addressing specific pain points for developers looking to build AI-powered agents. It includes practical examples and code snippets that demonstrate how to implement the new features, making it actionable for the target audience.",true,"\u002Fsummaries\u002F1ecdad90bfb46efd-agents-sdk-upgrades-harness-sandbox-and-compute-se-summary","2026-04-16 03:19:00",{"title":5,"description":61},{"loc":100},"1ecdad90bfb46efd","OpenAI News","article","https:\u002F\u002Fopenai.com\u002Findex\u002Fthe-next-evolution-of-the-agents-sdk","summaries\u002F1ecdad90bfb46efd-agents-sdk-upgrades-harness-sandbox-and-compute-se-summary",[110,111,112,113],"agents","ai-tools","python","ai-automation","OpenAI's updated Agents SDK (v0.14.0+) adds model-native harness for file\u002Ftools work, native sandbox execution across providers like E2B\u002FModal, and harness-compute separation for secure, durable, scalable agents on long tasks.",[113],"Zw2-1lGjDU9EtS8yEJepXxclkNgC9iY5rG2dmk1SOQU",[118,121,124,127,130,133,135,137,139,141,143,145,148,150,152,154,156,158,160,162,164,166,169,172,174,176,179,181,183,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,441,443,445,447,449,451,453,455,457,459,461,463,465,467,469,471,473,475,477,479,481,483,485,487,489,491,493,495,497,499,501,503,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,563,565,567,569,571,573,575,577,579,581,583,585,587,589,591,593,595,597,599,601,603,605,607,609,611,613,615,617,619,621,623,625,627,629,631,633,635,637,639,641,643,645,647,649,651,653,655,657,659,661,663,665,667,669,671,673,675,677,679,681,683,685,687,689,691,693,695,697,699,701,703,705,707,709,711,713,715,717,719,721,723,725,727,729,731,733,735,737,739,741,743,745,747,749,751,753,755,757,759,761,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,1027,1029,1031,1033,1035,1037,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1071,1073,1075,1077,1079,1081,1083,1085,1087,1089,1091,1093,1095,1097,1099,1101,1103,1105,1107,1109,1111,1113,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],{"categories":119},[120],"Developer Productivity",{"categories":122},[123],"Business & SaaS",{"categories":125},[126],"AI & LLMs",{"categories":128},[129],"AI Automation",{"categories":131},[132],"Product Strategy",{"categories":134},[126],{"categories":136},[120],{"categories":138},[123],{"categories":140},[],{"categories":142},[126],{"categories":144},[],{"categories":146},[147],"AI News & Trends",{"categories":149},[129],{"categories":151},[147],{"categories":153},[129],{"categories":155},[129],{"categories":157},[126],{"categories":159},[126],{"categories":161},[147],{"categories":163},[126],{"categories":165},[],{"categories":167},[168],"Design & Frontend",{"categories":170},[171],"Data Science & Visualization",{"categories":173},[147],{"categories":175},[],{"categories":177},[178],"Software Engineering",{"categories":180},[126],{"categories":182},[129],{"categories":184},[185],"Marketing & Growth",{"categories":187},[126],{"categories":189},[129],{"categories":191},[],{"categories":193},[],{"categories":195},[168],{"categories":197},[129],{"categories":199},[120],{"categories":201},[168],{"categories":203},[126],{"categories":205},[129],{"categories":207},[147],{"categories":209},[],{"categories":211},[],{"categories":213},[129],{"categories":215},[178],{"categories":217},[],{"categories":219},[123],{"categories":221},[],{"categories":223},[],{"categories":225},[129],{"categories":227},[129],{"categories":229},[126],{"categories":231},[],{"categories":233},[178],{"categories":235},[],{"categories":237},[],{"categories":239},[],{"categories":241},[126],{"categories":243},[185],{"categories":245},[168],{"categories":247},[168],{"categories":249},[126],{"categories":251},[129],{"categories":253},[126],{"categories":255},[126],{"categories":257},[129],{"categories":259},[129],{"categories":261},[171],{"categories":263},[147],{"categories":265},[129],{"categories":267},[185],{"categories":269},[129],{"categories":271},[132],{"categories":273},[],{"categories":275},[129],{"categories":277},[],{"categories":279},[129],{"categories":281},[178],{"categories":283},[168],{"categories":285},[126],{"categories":287},[],{"categories":289},[],{"categories":291},[129],{"categories":293},[],{"categories":295},[126],{"categories":297},[],{"categories":299},[120],{"categories":301},[178],{"categories":303},[123],{"categories":305},[147],{"categories":307},[126],{"categories":309},[],{"categories":311},[126],{"categories":313},[],{"categories":315},[178],{"categories":317},[171],{"categories":319},[],{"categories":321},[126],{"categories":323},[168],{"categories":325},[],{"categories":327},[168],{"categories":329},[129],{"categories":331},[],{"categories":333},[129],{"categories":335},[147],{"categories":337},[126],{"categories":339},[],{"categories":341},[129],{"categories":343},[126],{"categories":345},[132],{"categories":347},[],{"categories":349},[126],{"categories":351},[129],{"categories":353},[129],{"categories":355},[],{"categories":357},[171],{"categories":359},[126],{"categories":361},[],{"categories":363},[120],{"categories":365},[123],{"categories":367},[126],{"categories":369},[129],{"categories":371},[178],{"categories":373},[126],{"categories":375},[],{"categories":377},[],{"categories":379},[126],{"categories":381},[],{"categories":383},[168],{"categories":385},[],{"categories":387},[126],{"categories":389},[],{"categories":391},[129],{"categories":393},[126],{"categories":395},[168],{"categories":397},[],{"categories":399},[126],{"categories":401},[126],{"categories":403},[123],{"categories":405},[129],{"categories":407},[126],{"categories":409},[168],{"categories":411},[129],{"categories":413},[],{"categories":415},[],{"categories":417},[147],{"categories":419},[],{"categories":421},[126],{"categories":423},[123,185],{"categories":425},[],{"categories":427},[126],{"categories":429},[],{"categories":431},[],{"categories":433},[126],{"categories":435},[],{"categories":437},[126],{"categories":439},[440],"DevOps & Cloud",{"categories":442},[],{"categories":444},[147],{"categories":446},[168],{"categories":448},[],{"categories":450},[147],{"categories":452},[147],{"categories":454},[126],{"categories":456},[185],{"categories":458},[],{"categories":460},[123],{"categories":462},[],{"categories":464},[126,440],{"categories":466},[126],{"categories":468},[126],{"categories":470},[129],{"categories":472},[126,178],{"categories":474},[171],{"categories":476},[126],{"categories":478},[185],{"categories":480},[129],{"categories":482},[129],{"categories":484},[],{"categories":486},[129],{"categories":488},[126,123],{"categories":490},[],{"categories":492},[168],{"categories":494},[168],{"categories":496},[],{"categories":498},[],{"categories":500},[147],{"categories":502},[],{"categories":504},[120],{"categories":506},[178],{"categories":508},[126],{"categories":510},[168],{"categories":512},[129],{"categories":514},[178],{"categories":516},[147],{"categories":518},[168],{"categories":520},[],{"categories":522},[126],{"categories":524},[126],{"categories":526},[126],{"categories":528},[147],{"categories":530},[120],{"categories":532},[126],{"categories":534},[129],{"categories":536},[440],{"categories":538},[168],{"categories":540},[129],{"categories":542},[],{"categories":544},[],{"categories":546},[168],{"categories":548},[147],{"categories":550},[171],{"categories":552},[],{"categories":554},[126],{"categories":556},[126],{"categories":558},[123],{"categories":560},[126],{"categories":562},[126],{"categories":564},[147],{"categories":566},[],{"categories":568},[129],{"categories":570},[178],{"categories":572},[],{"categories":574},[126],{"categories":576},[126],{"categories":578},[129],{"categories":580},[],{"categories":582},[],{"categories":584},[126],{"categories":586},[],{"categories":588},[123],{"categories":590},[129],{"categories":592},[],{"categories":594},[120],{"categories":596},[126],{"categories":598},[123],{"categories":600},[147],{"categories":602},[],{"categories":604},[],{"categories":606},[],{"categories":608},[147],{"categories":610},[147],{"categories":612},[],{"categories":614},[],{"categories":616},[123],{"categories":618},[],{"categories":620},[],{"categories":622},[120],{"categories":624},[],{"categories":626},[185],{"categories":628},[129],{"categories":630},[123],{"categories":632},[129],{"categories":634},[],{"categories":636},[132],{"categories":638},[168],{"categories":640},[178],{"categories":642},[126],{"categories":644},[129],{"categories":646},[123],{"categories":648},[126],{"categories":650},[],{"categories":652},[],{"categories":654},[178],{"categories":656},[171],{"categories":658},[132],{"categories":660},[129],{"categories":662},[126],{"categories":664},[],{"categories":666},[440],{"categories":668},[],{"categories":670},[129],{"categories":672},[],{"categories":674},[],{"categories":676},[126],{"categories":678},[168],{"categories":680},[185],{"categories":682},[129],{"categories":684},[],{"categories":686},[120],{"categories":688},[],{"categories":690},[147],{"categories":692},[126,440],{"categories":694},[147],{"categories":696},[126],{"categories":698},[123],{"categories":700},[126],{"categories":702},[],{"categories":704},[123],{"categories":706},[],{"categories":708},[178],{"categories":710},[168],{"categories":712},[147],{"categories":714},[171],{"categories":716},[120],{"categories":718},[126],{"categories":720},[178],{"categories":722},[],{"categories":724},[],{"categories":726},[132],{"categories":728},[],{"categories":730},[126],{"categories":732},[],{"categories":734},[168],{"categories":736},[168],{"categories":738},[168],{"categories":740},[],{"categories":742},[],{"categories":744},[147],{"categories":746},[129],{"categories":748},[126],{"categories":750},[126],{"categories":752},[126],{"categories":754},[123],{"categories":756},[126],{"categories":758},[],{"categories":760},[178],{"categories":762},[178],{"categories":764},[123],{"categories":766},[],{"categories":768},[126],{"categories":770},[126],{"categories":772},[123],{"categories":774},[147],{"categories":776},[185],{"categories":778},[129],{"categories":780},[],{"categories":782},[168],{"categories":784},[],{"categories":786},[126],{"categories":788},[],{"categories":790},[123],{"categories":792},[129],{"categories":794},[],{"categories":796},[440],{"categories":798},[171],{"categories":800},[178],{"categories":802},[185],{"categories":804},[178],{"categories":806},[129],{"categories":808},[],{"categories":810},[],{"categories":812},[129],{"categories":814},[120],{"categories":816},[129],{"categories":818},[132],{"categories":820},[123],{"categories":822},[],{"categories":824},[126],{"categories":826},[132],{"categories":828},[126],{"categories":830},[126],{"categories":832},[185],{"categories":834},[168],{"categories":836},[129],{"categories":838},[],{"categories":840},[],{"categories":842},[440],{"categories":844},[178],{"categories":846},[],{"categories":848},[129],{"categories":850},[126],{"categories":852},[168,126],{"categories":854},[120],{"categories":856},[],{"categories":858},[126],{"categories":860},[120],{"categories":862},[168],{"categories":864},[129],{"categories":866},[178],{"categories":868},[],{"categories":870},[126],{"categories":872},[],{"categories":874},[120],{"categories":876},[],{"categories":878},[129],{"categories":880},[132],{"categories":882},[126],{"categories":884},[126],{"categories":886},[168],{"categories":888},[129],{"categories":890},[440],{"categories":892},[168],{"categories":894},[129],{"categories":896},[126],{"categories":898},[126],{"categories":900},[126],{"categories":902},[147],{"categories":904},[],{"categories":906},[132],{"categories":908},[129],{"categories":910},[168],{"categories":912},[129],{"categories":914},[178],{"categories":916},[168],{"categories":918},[129],{"categories":920},[147],{"categories":922},[],{"categories":924},[126],{"categories":926},[168],{"categories":928},[126],{"categories":930},[120],{"categories":932},[147],{"categories":934},[126],{"categories":936},[185],{"categories":938},[126],{"categories":940},[126],{"categories":942},[129],{"categories":944},[129],{"categories":946},[126],{"categories":948},[129],{"categories":950},[168],{"categories":952},[126],{"categories":954},[],{"categories":956},[],{"categories":958},[178],{"categories":960},[],{"categories":962},[120],{"categories":964},[440],{"categories":966},[],{"categories":968},[120],{"categories":970},[123],{"categories":972},[185],{"categories":974},[],{"categories":976},[123],{"categories":978},[],{"categories":980},[],{"categories":982},[],{"categories":984},[],{"categories":986},[],{"categories":988},[126],{"categories":990},[129],{"categories":992},[440],{"categories":994},[120],{"categories":996},[126],{"categories":998},[178],{"categories":1000},[132],{"categories":1002},[126],{"categories":1004},[185],{"categories":1006},[126],{"categories":1008},[126],{"categories":1010},[126],{"categories":1012},[126,120],{"categories":1014},[178],{"categories":1016},[178],{"categories":1018},[168],{"categories":1020},[126],{"categories":1022},[],{"categories":1024},[],{"categories":1026},[],{"categories":1028},[178],{"categories":1030},[171],{"categories":1032},[147],{"categories":1034},[168],{"categories":1036},[],{"categories":1038},[126],{"categories":1040},[126],{"categories":1042},[],{"categories":1044},[],{"categories":1046},[129],{"categories":1048},[126],{"categories":1050},[123],{"categories":1052},[],{"categories":1054},[120],{"categories":1056},[126],{"categories":1058},[120],{"categories":1060},[126],{"categories":1062},[178],{"categories":1064},[185],{"categories":1066},[126,168],{"categories":1068},[147],{"categories":1070},[168],{"categories":1072},[],{"categories":1074},[440],{"categories":1076},[168],{"categories":1078},[129],{"categories":1080},[],{"categories":1082},[],{"categories":1084},[],{"categories":1086},[],{"categories":1088},[178],{"categories":1090},[129],{"categories":1092},[129],{"categories":1094},[126],{"categories":1096},[126],{"categories":1098},[],{"categories":1100},[168],{"categories":1102},[],{"categories":1104},[],{"categories":1106},[129],{"categories":1108},[],{"categories":1110},[],{"categories":1112},[185],{"categories":1114},[185],{"categories":1116},[129],{"categories":1118},[],{"categories":1120},[126],{"categories":1122},[126],{"categories":1124},[178],{"categories":1126},[168],{"categories":1128},[168],{"categories":1130},[129],{"categories":1132},[120],{"categories":1134},[126],{"categories":1136},[168],{"categories":1138},[168],{"categories":1140},[129],{"categories":1142},[129],{"categories":1144},[126],{"categories":1146},[],{"categories":1148},[],{"categories":1150},[126],{"categories":1152},[129],{"categories":1154},[147],{"categories":1156},[178],{"categories":1158},[120],{"categories":1160},[126],{"categories":1162},[],{"categories":1164},[129],{"categories":1166},[129],{"categories":1168},[],{"categories":1170},[120],{"categories":1172},[126],{"categories":1174},[120],{"categories":1176},[120],{"categories":1178},[],{"categories":1180},[],{"categories":1182},[129],{"categories":1184},[129],{"categories":1186},[126],{"categories":1188},[126],{"categories":1190},[147],{"categories":1192},[171],{"categories":1194},[132],{"categories":1196},[147],{"categories":1198},[168],{"categories":1200},[],{"categories":1202},[147],{"categories":1204},[],{"categories":1206},[],{"categories":1208},[],{"categories":1210},[],{"categories":1212},[178],{"categories":1214},[171],{"categories":1216},[],{"categories":1218},[126],{"categories":1220},[126],{"categories":1222},[171],{"categories":1224},[178],{"categories":1226},[],{"categories":1228},[],{"categories":1230},[129],{"categories":1232},[147],{"categories":1234},[147],{"categories":1236},[129],{"categories":1238},[120],{"categories":1240},[126,440],{"categories":1242},[],{"categories":1244},[168],{"categories":1246},[120],{"categories":1248},[129],{"categories":1250},[168],{"categories":1252},[],{"categories":1254},[129],{"categories":1256},[129],{"categories":1258},[126],{"categories":1260},[185],{"categories":1262},[178],{"categories":1264},[168],{"categories":1266},[],{"categories":1268},[129],{"categories":1270},[126],{"categories":1272},[129],{"categories":1274},[129],{"categories":1276},[129],{"categories":1278},[185],{"categories":1280},[129],{"categories":1282},[126],{"categories":1284},[],{"categories":1286},[185],{"categories":1288},[147],{"categories":1290},[129],{"categories":1292},[],{"categories":1294},[],{"categories":1296},[126],{"categories":1298},[129],{"categories":1300},[147],{"categories":1302},[129],{"categories":1304},[],{"categories":1306},[],{"categories":1308},[],{"categories":1310},[129],{"categories":1312},[],{"categories":1314},[],{"categories":1316},[171],{"categories":1318},[126],{"categories":1320},[171],{"categories":1322},[147],{"categories":1324},[126],{"categories":1326},[126],{"categories":1328},[129],{"categories":1330},[126],{"categories":1332},[],{"categories":1334},[],{"categories":1336},[440],{"categories":1338},[],{"categories":1340},[],{"categories":1342},[120],{"categories":1344},[],{"categories":1346},[],{"categories":1348},[],{"categories":1350},[],{"categories":1352},[178],{"categories":1354},[147],{"categories":1356},[185],{"categories":1358},[123],{"categories":1360},[126],{"categories":1362},[126],{"categories":1364},[123],{"categories":1366},[],{"categories":1368},[168],{"categories":1370},[129],{"categories":1372},[123],{"categories":1374},[126],{"categories":1376},[126],{"categories":1378},[120],{"categories":1380},[],{"categories":1382},[120],{"categories":1384},[126],{"categories":1386},[185],{"categories":1388},[129],{"categories":1390},[147],{"categories":1392},[123],{"categories":1394},[126],{"categories":1396},[129],{"categories":1398},[],{"categories":1400},[126],{"categories":1402},[120],{"categories":1404},[126],{"categories":1406},[],{"categories":1408},[147],{"categories":1410},[126],{"categories":1412},[],{"categories":1414},[123],{"categories":1416},[126],{"categories":1418},[],{"categories":1420},[],{"categories":1422},[],{"categories":1424},[126],{"categories":1426},[],{"categories":1428},[440],{"categories":1430},[126],{"categories":1432},[],{"categories":1434},[126],{"categories":1436},[126],{"categories":1438},[126],{"categories":1440},[126,440],{"categories":1442},[126],{"categories":1444},[126],{"categories":1446},[168],{"categories":1448},[129],{"categories":1450},[],{"categories":1452},[129],{"categories":1454},[126],{"categories":1456},[126],{"categories":1458},[126],{"categories":1460},[120],{"categories":1462},[120],{"categories":1464},[178],{"categories":1466},[168],{"categories":1468},[129],{"categories":1470},[],{"categories":1472},[126],{"categories":1474},[147],{"categories":1476},[126],{"categories":1478},[123],{"categories":1480},[],{"categories":1482},[440],{"categories":1484},[168],{"categories":1486},[168],{"categories":1488},[129],{"categories":1490},[147],{"categories":1492},[129],{"categories":1494},[126],{"categories":1496},[],{"categories":1498},[126],{"categories":1500},[],{"categories":1502},[],{"categories":1504},[126],{"categories":1506},[126],{"categories":1508},[126],{"categories":1510},[129],{"categories":1512},[126],{"categories":1514},[],{"categories":1516},[171],{"categories":1518},[129],{"categories":1520},[],{"categories":1522},[126],{"categories":1524},[147],{"categories":1526},[],{"categories":1528},[168],{"categories":1530},[440],{"categories":1532},[147],{"categories":1534},[178],{"categories":1536},[178],{"categories":1538},[147],{"categories":1540},[147],{"categories":1542},[440],{"categories":1544},[],{"categories":1546},[147],{"categories":1548},[126],{"categories":1550},[120],{"categories":1552},[147],{"categories":1554},[],{"categories":1556},[171],{"categories":1558},[147],{"categories":1560},[178],{"categories":1562},[147],{"categories":1564},[440],{"categories":1566},[126],{"categories":1568},[126],{"categories":1570},[],{"categories":1572},[123],{"categories":1574},[],{"categories":1576},[],{"categories":1578},[126],{"categories":1580},[126],{"categories":1582},[126],{"categories":1584},[126],{"categories":1586},[],{"categories":1588},[171],{"categories":1590},[120],{"categories":1592},[],{"categories":1594},[126],{"categories":1596},[126],{"categories":1598},[440],{"categories":1600},[440],{"categories":1602},[],{"categories":1604},[129],{"categories":1606},[147],{"categories":1608},[147],{"categories":1610},[126],{"categories":1612},[129],{"categories":1614},[],{"categories":1616},[168],{"categories":1618},[126],{"categories":1620},[126],{"categories":1622},[],{"categories":1624},[],{"categories":1626},[440],{"categories":1628},[126],{"categories":1630},[178],{"categories":1632},[123],{"categories":1634},[126],{"categories":1636},[],{"categories":1638},[129],{"categories":1640},[120],{"categories":1642},[120],{"categories":1644},[],{"categories":1646},[126],{"categories":1648},[168],{"categories":1650},[129],{"categories":1652},[],{"categories":1654},[126],{"categories":1656},[126],{"categories":1658},[129],{"categories":1660},[],{"categories":1662},[129],{"categories":1664},[178],{"categories":1666},[],{"categories":1668},[126],{"categories":1670},[],{"categories":1672},[126],{"categories":1674},[],{"categories":1676},[126],{"categories":1678},[126],{"categories":1680},[],{"categories":1682},[126],{"categories":1684},[147],{"categories":1686},[126],{"categories":1688},[126],{"categories":1690},[120],{"categories":1692},[126],{"categories":1694},[147],{"categories":1696},[129],{"categories":1698},[],{"categories":1700},[126],{"categories":1702},[185],{"categories":1704},[],{"categories":1706},[],{"categories":1708},[],{"categories":1710},[120],{"categories":1712},[147],{"categories":1714},[129],{"categories":1716},[126],{"categories":1718},[168],{"categories":1720},[129],{"categories":1722},[],{"categories":1724},[129],{"categories":1726},[],{"categories":1728},[126],{"categories":1730},[129],{"categories":1732},[126],{"categories":1734},[],{"categories":1736},[126],{"categories":1738},[126],{"categories":1740},[147],{"categories":1742},[168],{"categories":1744},[129],{"categories":1746},[168],{"categories":1748},[123],{"categories":1750},[],{"categories":1752},[],{"categories":1754},[126],{"categories":1756},[120],{"categories":1758},[147],{"categories":1760},[],{"categories":1762},[],{"categories":1764},[178],{"categories":1766},[168],{"categories":1768},[],{"categories":1770},[126],{"categories":1772},[],{"categories":1774},[185],{"categories":1776},[126],{"categories":1778},[440],{"categories":1780},[178],{"categories":1782},[],{"categories":1784},[129],{"categories":1786},[126],{"categories":1788},[129],{"categories":1790},[129],{"categories":1792},[126],{"categories":1794},[],{"categories":1796},[120],{"categories":1798},[126],{"categories":1800},[123],{"categories":1802},[178],{"categories":1804},[168],{"categories":1806},[],{"categories":1808},[],{"categories":1810},[],{"categories":1812},[129],{"categories":1814},[168],{"categories":1816},[147],{"categories":1818},[126],{"categories":1820},[147],{"categories":1822},[168],{"categories":1824},[],{"categories":1826},[168],{"categories":1828},[147],{"categories":1830},[123],{"categories":1832},[126],{"categories":1834},[147],{"categories":1836},[185],{"categories":1838},[],{"categories":1840},[],{"categories":1842},[171],{"categories":1844},[126,178],{"categories":1846},[147],{"categories":1848},[126],{"categories":1850},[129],{"categories":1852},[129],{"categories":1854},[126],{"categories":1856},[],{"categories":1858},[178],{"categories":1860},[126],{"categories":1862},[171],{"categories":1864},[129],{"categories":1866},[185],{"categories":1868},[440],{"categories":1870},[],{"categories":1872},[120],{"categories":1874},[129],{"categories":1876},[129],{"categories":1878},[178],{"categories":1880},[126],{"categories":1882},[126],{"categories":1884},[],{"categories":1886},[],{"categories":1888},[],{"categories":1890},[440],{"categories":1892},[147],{"categories":1894},[126],{"categories":1896},[126],{"categories":1898},[126],{"categories":1900},[],{"categories":1902},[171],{"categories":1904},[123],{"categories":1906},[],{"categories":1908},[129],{"categories":1910},[440],{"categories":1912},[],{"categories":1914},[168],{"categories":1916},[168],{"categories":1918},[],{"categories":1920},[178],{"categories":1922},[168],{"categories":1924},[126],{"categories":1926},[],{"categories":1928},[147],{"categories":1930},[126],{"categories":1932},[168],{"categories":1934},[129],{"categories":1936},[147],{"categories":1938},[],{"categories":1940},[129],{"categories":1942},[168],{"categories":1944},[126],{"categories":1946},[],{"categories":1948},[126],{"categories":1950},[126],{"categories":1952},[440],{"categories":1954},[147],{"categories":1956},[171],{"categories":1958},[171],{"categories":1960},[],{"categories":1962},[],{"categories":1964},[],{"categories":1966},[129],{"categories":1968},[178],{"categories":1970},[178],{"categories":1972},[],{"categories":1974},[],{"categories":1976},[126],{"categories":1978},[],{"categories":1980},[129],{"categories":1982},[126],{"categories":1984},[],{"categories":1986},[126],{"categories":1988},[123],{"categories":1990},[126],{"categories":1992},[185],{"categories":1994},[129],{"categories":1996},[126],{"categories":1998},[178],{"categories":2000},[147],{"categories":2002},[129],{"categories":2004},[],{"categories":2006},[147],{"categories":2008},[129],{"categories":2010},[129],{"categories":2012},[],{"categories":2014},[123],{"categories":2016},[129],{"categories":2018},[],{"categories":2020},[126],{"categories":2022},[120],{"categories":2024},[147],{"categories":2026},[440],{"categories":2028},[129],{"categories":2030},[129],{"categories":2032},[120],{"categories":2034},[126],{"categories":2036},[],{"categories":2038},[],{"categories":2040},[168],{"categories":2042},[126,123],{"categories":2044},[],{"categories":2046},[120],{"categories":2048},[171],{"categories":2050},[126],{"categories":2052},[178],{"categories":2054},[126],{"categories":2056},[129],{"categories":2058},[126],{"categories":2060},[126],{"categories":2062},[147],{"categories":2064},[129],{"categories":2066},[],{"categories":2068},[],{"categories":2070},[129],{"categories":2072},[126],{"categories":2074},[440],{"categories":2076},[],{"categories":2078},[126],{"categories":2080},[129],{"categories":2082},[],{"categories":2084},[126],{"categories":2086},[185],{"categories":2088},[171],{"categories":2090},[129],{"categories":2092},[126],{"categories":2094},[440],{"categories":2096},[],{"categories":2098},[126],{"categories":2100},[185],{"categories":2102},[168],{"categories":2104},[126],{"categories":2106},[],{"categories":2108},[185],{"categories":2110},[147],{"categories":2112},[126],{"categories":2114},[126],{"categories":2116},[120],{"categories":2118},[],{"categories":2120},[],{"categories":2122},[168],{"categories":2124},[126],{"categories":2126},[171],{"categories":2128},[185],{"categories":2130},[185],{"categories":2132},[147],{"categories":2134},[],{"categories":2136},[],{"categories":2138},[126],{"categories":2140},[],{"categories":2142},[126,178],{"categories":2144},[147],{"categories":2146},[129],{"categories":2148},[178],{"categories":2150},[126],{"categories":2152},[120],{"categories":2154},[],{"categories":2156},[],{"categories":2158},[120],{"categories":2160},[185],{"categories":2162},[126],{"categories":2164},[],{"categories":2166},[168,126],{"categories":2168},[440],{"categories":2170},[120],{"categories":2172},[],{"categories":2174},[123],{"categories":2176},[123],{"categories":2178},[126],{"categories":2180},[178],{"categories":2182},[129],{"categories":2184},[147],{"categories":2186},[185],{"categories":2188},[168],{"categories":2190},[126],{"categories":2192},[126],{"categories":2194},[126],{"categories":2196},[120],{"categories":2198},[126],{"categories":2200},[129],{"categories":2202},[147],{"categories":2204},[],{"categories":2206},[],{"categories":2208},[171],{"categories":2210},[178],{"categories":2212},[126],{"categories":2214},[168],{"categories":2216},[171],{"categories":2218},[126],{"categories":2220},[126],{"categories":2222},[129],{"categories":2224},[129],{"categories":2226},[126,123],{"categories":2228},[],{"categories":2230},[168],{"categories":2232},[],{"categories":2234},[126],{"categories":2236},[147],{"categories":2238},[120],{"categories":2240},[120],{"categories":2242},[129],{"categories":2244},[126],{"categories":2246},[123],{"categories":2248},[178],{"categories":2250},[185],{"categories":2252},[],{"categories":2254},[147],{"categories":2256},[126],{"categories":2258},[126],{"categories":2260},[147],{"categories":2262},[178],{"categories":2264},[126],{"categories":2266},[129],{"categories":2268},[147],{"categories":2270},[126],{"categories":2272},[168],{"categories":2274},[126],{"categories":2276},[126],{"categories":2278},[440],{"categories":2280},[132],{"categories":2282},[129],{"categories":2284},[126],{"categories":2286},[147],{"categories":2288},[129],{"categories":2290},[185],{"categories":2292},[126],{"categories":2294},[],{"categories":2296},[126],{"categories":2298},[],{"categories":2300},[],{"categories":2302},[],{"categories":2304},[123],{"categories":2306},[126],{"categories":2308},[129],{"categories":2310},[147],{"categories":2312},[147],{"categories":2314},[147],{"categories":2316},[147],{"categories":2318},[],{"categories":2320},[120],{"categories":2322},[129],{"categories":2324},[147],{"categories":2326},[120],{"categories":2328},[129],{"categories":2330},[126],{"categories":2332},[126,129],{"categories":2334},[129],{"categories":2336},[440],{"categories":2338},[147],{"categories":2340},[147],{"categories":2342},[129],{"categories":2344},[126],{"categories":2346},[],{"categories":2348},[147],{"categories":2350},[185],{"categories":2352},[120],{"categories":2354},[126],{"categories":2356},[126],{"categories":2358},[],{"categories":2360},[178],{"categories":2362},[],{"categories":2364},[120],{"categories":2366},[129],{"categories":2368},[147],{"categories":2370},[126],{"categories":2372},[147],{"categories":2374},[120],{"categories":2376},[147],{"categories":2378},[147],{"categories":2380},[],{"categories":2382},[123],{"categories":2384},[129],{"categories":2386},[147],{"categories":2388},[147],{"categories":2390},[147],{"categories":2392},[147],{"categories":2394},[147],{"categories":2396},[147],{"categories":2398},[147],{"categories":2400},[147],{"categories":2402},[147],{"categories":2404},[147],{"categories":2406},[171],{"categories":2408},[120],{"categories":2410},[126],{"categories":2412},[126],{"categories":2414},[],{"categories":2416},[126,120],{"categories":2418},[],{"categories":2420},[129],{"categories":2422},[147],{"categories":2424},[129],{"categories":2426},[126],{"categories":2428},[126],{"categories":2430},[126],{"categories":2432},[126],{"categories":2434},[126],{"categories":2436},[129],{"categories":2438},[123],{"categories":2440},[168],{"categories":2442},[147],{"categories":2444},[126],{"categories":2446},[],{"categories":2448},[],{"categories":2450},[129],{"categories":2452},[168],{"categories":2454},[126],{"categories":2456},[],{"categories":2458},[],{"categories":2460},[185],{"categories":2462},[126],{"categories":2464},[],{"categories":2466},[],{"categories":2468},[120],{"categories":2470},[123],{"categories":2472},[126],{"categories":2474},[123],{"categories":2476},[168],{"categories":2478},[],{"categories":2480},[147],{"categories":2482},[],{"categories":2484},[168],{"categories":2486},[126],{"categories":2488},[185],{"categories":2490},[],{"categories":2492},[185],{"categories":2494},[],{"categories":2496},[],{"categories":2498},[129],{"categories":2500},[],{"categories":2502},[123],{"categories":2504},[120],{"categories":2506},[168],{"categories":2508},[178],{"categories":2510},[],{"categories":2512},[],{"categories":2514},[126],{"categories":2516},[120],{"categories":2518},[185],{"categories":2520},[],{"categories":2522},[129],{"categories":2524},[129],{"categories":2526},[147],{"categories":2528},[126],{"categories":2530},[129],{"categories":2532},[126],{"categories":2534},[129],{"categories":2536},[126],{"categories":2538},[132],{"categories":2540},[147],{"categories":2542},[],{"categories":2544},[185],{"categories":2546},[178],{"categories":2548},[129],{"categories":2550},[],{"categories":2552},[126],{"categories":2554},[129],{"categories":2556},[123],{"categories":2558},[120],{"categories":2560},[126],{"categories":2562},[168],{"categories":2564},[178],{"categories":2566},[178],{"categories":2568},[126],{"categories":2570},[171],{"categories":2572},[126],{"categories":2574},[129],{"categories":2576},[123],{"categories":2578},[129],{"categories":2580},[126],{"categories":2582},[126],{"categories":2584},[129],{"categories":2586},[147],{"categories":2588},[],{"categories":2590},[120],{"categories":2592},[126],{"categories":2594},[129],{"categories":2596},[126],{"categories":2598},[126],{"categories":2600},[],{"categories":2602},[168],{"categories":2604},[123],{"categories":2606},[147],{"categories":2608},[126],{"categories":2610},[126],{"categories":2612},[168],{"categories":2614},[185],{"categories":2616},[171],{"categories":2618},[126],{"categories":2620},[147],{"categories":2622},[126],{"categories":2624},[129],{"categories":2626},[440],{"categories":2628},[126],{"categories":2630},[129],{"categories":2632},[171],{"categories":2634},[],{"categories":2636},[129],{"categories":2638},[178],{"categories":2640},[168],{"categories":2642},[126],{"categories":2644},[120],{"categories":2646},[123],{"categories":2648},[178],{"categories":2650},[],{"categories":2652},[129],{"categories":2654},[126],{"categories":2656},[],{"categories":2658},[147],{"categories":2660},[],{"categories":2662},[147],{"categories":2664},[126],{"categories":2666},[129],{"categories":2668},[129],{"categories":2670},[129],{"categories":2672},[],{"categories":2674},[],{"categories":2676},[126],{"categories":2678},[126],{"categories":2680},[],{"categories":2682},[168],{"categories":2684},[129],{"categories":2686},[185],{"categories":2688},[120],{"categories":2690},[],{"categories":2692},[],{"categories":2694},[147],{"categories":2696},[178],{"categories":2698},[126],{"categories":2700},[126],{"categories":2702},[126],{"categories":2704},[178],{"categories":2706},[147],{"categories":2708},[168],{"categories":2710},[126],{"categories":2712},[126],{"categories":2714},[126],{"categories":2716},[147],{"categories":2718},[126],{"categories":2720},[147],{"categories":2722},[129],{"categories":2724},[129],{"categories":2726},[178],{"categories":2728},[129],{"categories":2730},[126],{"categories":2732},[178],{"categories":2734},[168],{"categories":2736},[],{"categories":2738},[129],{"categories":2740},[],{"categories":2742},[],{"categories":2744},[123],{"categories":2746},[126],{"categories":2748},[129],{"categories":2750},[120],{"categories":2752},[129],{"categories":2754},[185],{"categories":2756},[],{"categories":2758},[129],{"categories":2760},[],{"categories":2762},[120],{"categories":2764},[129],{"categories":2766},[],{"categories":2768},[129],{"categories":2770},[126],{"categories":2772},[147],{"categories":2774},[126],{"categories":2776},[129],{"categories":2778},[147],{"categories":2780},[129],{"categories":2782},[178],{"categories":2784},[168],{"categories":2786},[120],{"categories":2788},[],{"categories":2790},[129],{"categories":2792},[168],{"categories":2794},[147],{"categories":2796},[126],{"categories":2798},[168],{"categories":2800},[120],{"categories":2802},[],{"categories":2804},[129],{"categories":2806},[129],{"categories":2808},[126],{"categories":2810},[],{"categories":2812},[129],{"categories":2814},[132],{"categories":2816},[147],{"categories":2818},[129],{"categories":2820},[123],{"categories":2822},[],{"categories":2824},[126],{"categories":2826},[132],{"categories":2828},[126],{"categories":2830},[129],{"categories":2832},[147],{"categories":2834},[120],{"categories":2836},[440],{"categories":2838},[126],{"categories":2840},[126],{"categories":2842},[126],{"categories":2844},[147],{"categories":2846},[123],{"categories":2848},[126],{"categories":2850},[168],{"categories":2852},[147],{"categories":2854},[440],{"categories":2856},[126],{"categories":2858},[],{"categories":2860},[],{"categories":2862},[440],{"categories":2864},[171],{"categories":2866},[129],{"categories":2868},[129],{"categories":2870},[147],{"categories":2872},[126],{"categories":2874},[120],{"categories":2876},[168],{"categories":2878},[129],{"categories":2880},[126],{"categories":2882},[185],{"categories":2884},[126],{"categories":2886},[129],{"categories":2888},[],{"categories":2890},[126],{"categories":2892},[126],{"categories":2894},[147],{"categories":2896},[120],{"categories":2898},[],{"categories":2900},[126],{"categories":2902},[126],{"categories":2904},[178],{"categories":2906},[168],{"categories":2908},[126,129],{"categories":2910},[185,123],{"categories":2912},[126],{"categories":2914},[],{"categories":2916},[129],{"categories":2918},[],{"categories":2920},[178],{"categories":2922},[126],{"categories":2924},[147],{"categories":2926},[],{"categories":2928},[129],{"categories":2930},[],{"categories":2932},[129],{"categories":2934},[120],{"categories":2936},[129],{"categories":2938},[126],{"categories":2940},[440],{"categories":2942},[185],{"categories":2944},[123],{"categories":2946},[123],{"categories":2948},[120],{"categories":2950},[120],{"categories":2952},[126],{"categories":2954},[129],{"categories":2956},[126],{"categories":2958},[126],{"categories":2960},[120],{"categories":2962},[126],{"categories":2964},[185],{"categories":2966},[147],{"categories":2968},[126],{"categories":2970},[129],{"categories":2972},[126],{"categories":2974},[],{"categories":2976},[178],{"categories":2978},[],{"categories":2980},[129],{"categories":2982},[120],{"categories":2984},[],{"categories":2986},[440],{"categories":2988},[126],{"categories":2990},[],{"categories":2992},[147],{"categories":2994},[129],{"categories":2996},[178],{"categories":2998},[126],{"categories":3000},[129],{"categories":3002},[178],{"categories":3004},[129],{"categories":3006},[147],{"categories":3008},[120],{"categories":3010},[147],{"categories":3012},[178],{"categories":3014},[126],{"categories":3016},[168],{"categories":3018},[126],{"categories":3020},[126],{"categories":3022},[126],{"categories":3024},[126],{"categories":3026},[129],{"categories":3028},[126],{"categories":3030},[129],{"categories":3032},[126],{"categories":3034},[120],{"categories":3036},[126],{"categories":3038},[129],{"categories":3040},[168],{"categories":3042},[120],{"categories":3044},[129],{"categories":3046},[168],{"categories":3048},[],{"categories":3050},[126],{"categories":3052},[126],{"categories":3054},[178],{"categories":3056},[],{"categories":3058},[129],{"categories":3060},[185],{"categories":3062},[126],{"categories":3064},[147],{"categories":3066},[185],{"categories":3068},[129],{"categories":3070},[123],{"categories":3072},[123],{"categories":3074},[126],{"categories":3076},[120],{"categories":3078},[],{"categories":3080},[126],{"categories":3082},[],{"categories":3084},[120],{"categories":3086},[126],{"categories":3088},[129],{"categories":3090},[129],{"categories":3092},[],{"categories":3094},[178],{"categories":3096},[178],{"categories":3098},[185],{"categories":3100},[168],{"categories":3102},[],{"categories":3104},[126],{"categories":3106},[120],{"categories":3108},[126],{"categories":3110},[178],{"categories":3112},[120],{"categories":3114},[147],{"categories":3116},[147],{"categories":3118},[],{"categories":3120},[147],{"categories":3122},[129],{"categories":3124},[168],{"categories":3126},[171],{"categories":3128},[126],{"categories":3130},[],{"categories":3132},[147],{"categories":3134},[178],{"categories":3136},[123],{"categories":3138},[126],{"categories":3140},[120],{"categories":3142},[440],{"categories":3144},[120],{"categories":3146},[],{"categories":3148},[],{"categories":3150},[147],{"categories":3152},[],{"categories":3154},[129],{"categories":3156},[129],{"categories":3158},[129],{"categories":3160},[],{"categories":3162},[126],{"categories":3164},[],{"categories":3166},[147],{"categories":3168},[120],{"categories":3170},[168],{"categories":3172},[126],{"categories":3174},[147],{"categories":3176},[147],{"categories":3178},[],{"categories":3180},[147],{"categories":3182},[120],{"categories":3184},[126],{"categories":3186},[],{"categories":3188},[129],{"categories":3190},[129],{"categories":3192},[120],{"categories":3194},[],{"categories":3196},[],{"categories":3198},[],{"categories":3200},[168],{"categories":3202},[129],{"categories":3204},[126],{"categories":3206},[],{"categories":3208},[],{"categories":3210},[],{"categories":3212},[168],{"categories":3214},[],{"categories":3216},[120],{"categories":3218},[],{"categories":3220},[],{"categories":3222},[168],{"categories":3224},[126],{"categories":3226},[147],{"categories":3228},[],{"categories":3230},[185],{"categories":3232},[147],{"categories":3234},[185],{"categories":3236},[126],{"categories":3238},[],{"categories":3240},[],{"categories":3242},[129],{"categories":3244},[],{"categories":3246},[],{"categories":3248},[129],{"categories":3250},[126],{"categories":3252},[],{"categories":3254},[129],{"categories":3256},[147],{"categories":3258},[185],{"categories":3260},[171],{"categories":3262},[129],{"categories":3264},[129],{"categories":3266},[],{"categories":3268},[],{"categories":3270},[],{"categories":3272},[147],{"categories":3274},[],{"categories":3276},[],{"categories":3278},[168],{"categories":3280},[120],{"categories":3282},[],{"categories":3284},[123],{"categories":3286},[185],{"categories":3288},[126],{"categories":3290},[178],{"categories":3292},[120],{"categories":3294},[171],{"categories":3296},[123],{"categories":3298},[178],{"categories":3300},[],{"categories":3302},[],{"categories":3304},[129],{"categories":3306},[120],{"categories":3308},[168],{"categories":3310},[120],{"categories":3312},[129],{"categories":3314},[440],{"categories":3316},[129],{"categories":3318},[],{"categories":3320},[126],{"categories":3322},[147],{"categories":3324},[178],{"categories":3326},[],{"categories":3328},[168],{"categories":3330},[147],{"categories":3332},[120],{"categories":3334},[129],{"categories":3336},[126],{"categories":3338},[123],{"categories":3340},[129,440],{"categories":3342},[129],{"categories":3344},[178],{"categories":3346},[126],{"categories":3348},[171],{"categories":3350},[185],{"categories":3352},[129],{"categories":3354},[],{"categories":3356},[129],{"categories":3358},[126],{"categories":3360},[123],{"categories":3362},[],{"categories":3364},[],{"categories":3366},[126],{"categories":3368},[171],{"categories":3370},[126],{"categories":3372},[],{"categories":3374},[147],{"categories":3376},[],{"categories":3378},[147],{"categories":3380},[178],{"categories":3382},[129],{"categories":3384},[126],{"categories":3386},[185],{"categories":3388},[178],{"categories":3390},[],{"categories":3392},[147],{"categories":3394},[126],{"categories":3396},[],{"categories":3398},[126],{"categories":3400},[129],{"categories":3402},[126],{"categories":3404},[129],{"categories":3406},[126],{"categories":3408},[126],{"categories":3410},[126],{"categories":3412},[126],{"categories":3414},[123],{"categories":3416},[],{"categories":3418},[132],{"categories":3420},[147],{"categories":3422},[126],{"categories":3424},[],{"categories":3426},[178],{"categories":3428},[126],{"categories":3430},[126],{"categories":3432},[129],{"categories":3434},[147],{"categories":3436},[126],{"categories":3438},[126],{"categories":3440},[123],{"categories":3442},[129],{"categories":3444},[168],{"categories":3446},[],{"categories":3448},[171],{"categories":3450},[126],{"categories":3452},[],{"categories":3454},[147],{"categories":3456},[185],{"categories":3458},[],{"categories":3460},[],{"categories":3462},[147],{"categories":3464},[147],{"categories":3466},[185],{"categories":3468},[120],{"categories":3470},[129],{"categories":3472},[129],{"categories":3474},[126],{"categories":3476},[123],{"categories":3478},[],{"categories":3480},[],{"categories":3482},[147],{"categories":3484},[171],{"categories":3486},[178],{"categories":3488},[129],{"categories":3490},[168],{"categories":3492},[171],{"categories":3494},[171],{"categories":3496},[],{"categories":3498},[147],{"categories":3500},[126],{"categories":3502},[126],{"categories":3504},[178],{"categories":3506},[],{"categories":3508},[147],{"categories":3510},[147],{"categories":3512},[147],{"categories":3514},[],{"categories":3516},[129],{"categories":3518},[126],{"categories":3520},[],{"categories":3522},[120],{"categories":3524},[123],{"categories":3526},[],{"categories":3528},[126],{"categories":3530},[126],{"categories":3532},[],{"categories":3534},[178],{"categories":3536},[],{"categories":3538},[],{"categories":3540},[],{"categories":3542},[],{"categories":3544},[126],{"categories":3546},[147],{"categories":3548},[],{"categories":3550},[],{"categories":3552},[126],{"categories":3554},[126],{"categories":3556},[126],{"categories":3558},[171],{"categories":3560},[126],{"categories":3562},[171],{"categories":3564},[],{"categories":3566},[171],{"categories":3568},[171],{"categories":3570},[440],{"categories":3572},[129],{"categories":3574},[178],{"categories":3576},[],{"categories":3578},[],{"categories":3580},[171],{"categories":3582},[178],{"categories":3584},[178],{"categories":3586},[178],{"categories":3588},[],{"categories":3590},[120],{"categories":3592},[178],{"categories":3594},[178],{"categories":3596},[120],{"categories":3598},[178],{"categories":3600},[123],{"categories":3602},[178],{"categories":3604},[178],{"categories":3606},[178],{"categories":3608},[171],{"categories":3610},[147],{"categories":3612},[147],{"categories":3614},[126],{"categories":3616},[178],{"categories":3618},[171],{"categories":3620},[440],{"categories":3622},[171],{"categories":3624},[171],{"categories":3626},[171],{"categories":3628},[],{"categories":3630},[123],{"categories":3632},[],{"categories":3634},[440],{"categories":3636},[178],{"categories":3638},[178],{"categories":3640},[178],{"categories":3642},[129],{"categories":3644},[147,123],{"categories":3646},[171],{"categories":3648},[],{"categories":3650},[],{"categories":3652},[171],{"categories":3654},[],{"categories":3656},[171],{"categories":3658},[147],{"categories":3660},[129],{"categories":3662},[],{"categories":3664},[178],{"categories":3666},[126],{"categories":3668},[168],{"categories":3670},[],{"categories":3672},[126],{"categories":3674},[],{"categories":3676},[147],{"categories":3678},[120],{"categories":3680},[171],{"categories":3682},[],{"categories":3684},[178],{"categories":3686},[147],[3688,3952,4104,4191],{"id":3689,"title":3690,"ai":3691,"body":3696,"categories":3925,"created_at":68,"date_modified":68,"description":61,"extension":69,"faq":68,"featured":70,"kicker_label":68,"meta":3926,"navigation":99,"path":3939,"published_at":3940,"question":68,"scraped_at":3941,"seo":3942,"sitemap":3943,"source_id":3944,"source_name":3945,"source_type":106,"source_url":3946,"stem":3947,"tags":3948,"thumbnail_url":68,"tldr":3949,"tweet":68,"unknown_tags":3950,"__hash__":3951},"summaries\u002Fsummaries\u002Fa5aba0cb38720693-persist-rag-memory-across-turns-with-lakebase-post-summary.md","Persist RAG Memory Across Turns with Lakebase PostgresSaver",{"provider":7,"model":8,"input_tokens":3692,"output_tokens":3693,"processing_time_ms":3694,"cost_usd":3695},9254,2249,26609,0.00295265,{"type":14,"value":3697,"toc":3920},[3698,3702,3709,3736,3739,3743,3766,3803,3821,3825,3884,3917],[17,3699,3701],{"id":3700},"parse-and-index-multimodal-pdfs-for-reliable-retrieval","Parse and Index Multimodal PDFs for Reliable Retrieval",[22,3703,3704,3705,3708],{},"Use Databricks' ",[26,3706,3707],{},"ai_parse_document(version=\"2.0\")"," to handle complex PDFs with text, tables (rendered as HTML), images, and diagrams in one call, outperforming PyPDF2 or Unstructured for enterprise docs. Load PDFs from Unity Catalog Volumes as binary files via Spark, parse into a VARIANT column with structured elements (type: text\u002Ftable\u002Ffigure\u002Fsection_header, content, optional AI-generated descriptions), then save to a Delta table.",[22,3710,3711,3712,3715,3716,3719,3720,3723,3724,3727,3728,3731,3732,3735],{},"Extract plain text by concatenating elements with ",[26,3713,3714],{},"== page =="," separators using a custom UDF. Chunk with LangChain's ",[26,3717,3718],{},"RecursiveCharacterTextSplitter(chunk_size=2000, chunk_overlap=200, separators=[\"== page ==\", \"\\n\\n\", ...])"," in a Pandas UDF for Spark scalability, adding unique IDs via ",[26,3721,3722],{},"monotonically_increasing_id()",". Enable Change Data Feed (",[26,3725,3726],{},"ALTER TABLE ... SET TBLPROPERTIES (delta.enableChangeDataFeed = true)","), then create a Delta Sync Vector Search index with ",[26,3729,3730],{},"databricks-gte-large-en"," (1024-dim embeddings, 8192-token context). Databricks auto-computes embeddings on index (from ",[26,3733,3734],{},"chunk"," column) and queries—no direct model calls needed. Retrieve top-5 results for queries like \"How does the system prevent overheating?\" to pull relevant chunks with paths.",[22,3737,3738],{},"This pipeline ensures fresh indexing via TRIGGERED sync, handling updates without reprocessing.",[17,3740,3742],{"id":3741},"implement-persistent-conversation-memory-via-lakebase","Implement Persistent Conversation Memory via Lakebase",[22,3744,3745,3746,3749,3750,3753,3754,3757,3758,3761,3762,3765],{},"Standard RAG demos fail multi-turn because ",[26,3747,3748],{},"InMemorySaver"," loses state per Model Serving request. Fix by provisioning Lakebase Autoscaling (managed Postgres 17, ~1 min setup via UI: Apps > Lakebase > Autoscaling > New project). Use ",[26,3751,3752],{},"w.postgres"," API (not ",[26,3755,3756],{},"w.database"," for legacy): fetch host (",[26,3759,3760],{},"ep.status.hosts.host","), endpoint, generate token via ",[26,3763,3764],{},"w.postgres.generate_database_credential(endpoint)",".",[22,3767,3768,3769,3772,3773,3776,3777,3780,3781,3784,3785,3788,3789,3788,3792,3788,3795,3798,3799,3802],{},"URL-encode username (",[26,3770,3771],{},"urllib.parse.quote(username)",") to handle ",[26,3774,3775],{},"@"," in emails. Connect with ",[26,3778,3779],{},"psycopg.connect(db_uri, autocommit=True, row_factory=dict_row)",", then ",[26,3782,3783],{},"PostgresSaver(conn=conn).setup()","—creates ",[26,3786,3787],{},"checkpoints",", ",[26,3790,3791],{},"checkpoint_writes",[26,3793,3794],{},"checkpoint_blobs",[26,3796,3797],{},"checkpoint_migrations"," tables. Avoid ",[26,3800,3801],{},"PostgresSaver.from_conn_string()"," as it yields a context manager, not persistent instance.",[22,3804,3805,3806,3808,3809,3812,3813,3816,3817,3820],{},"In the agent, pass this checkpointer instead of ",[26,3807,3748],{},". Use stable ",[26,3810,3811],{},"thread_id"," (e.g., \"demo-session-001\") in ",[26,3814,3815],{},"config={\"configurable\": {\"thread_id\": ...}}"," for ",[26,3818,3819],{},"agent.invoke()",". Agent loads full history from Lakebase per turn, resolving anaphora like \"it\" to prior context (e.g., Turn 1: \"What is Orion?\"; Turn 2: \"How does it handle overheating?\").",[17,3822,3824],{"id":3823},"deploy-production-agent-with-mlflow-and-validate","Deploy Production Agent with MLflow and Validate",[22,3826,3827,3828,3831,3832,3835,3836,3839,3840,3843,3844,3847,3848,3850,3851,3854,3855,3858,3859,3862,3863,3866,3867,3870,3871,3788,3874,3788,3877,3880,3881,3765],{},"Package agent in ",[26,3829,3830],{},"agent.py"," as ",[26,3833,3834],{},"mlflow.pyfunc.ResponsesAgent",": load config from ",[26,3837,3838],{},"agent-config.yaml"," (LLM endpoint, index, Lakebase details, num_results=3), build ",[26,3841,3842],{},"ChatDatabricks"," + ",[26,3845,3846],{},"VectorSearchRetrieverTool"," + checkpointer, handle ",[26,3849,3811],{}," from ",[26,3852,3853],{},"custom_inputs"," (default ",[26,3856,3857],{},"session-{uuid4()}","). Log model with MLflow (",[26,3860,3861],{},"mlflow.pyfunc.log_model","), binding resources like ",[26,3864,3865],{},"DatabricksVectorSearchIndex"," and ",[26,3868,3869],{},"DatabricksServingEndpoint","; pip reqs include ",[26,3872,3873],{},"langgraph-checkpoint-postgres",[26,3875,3876],{},"psycopg[binary]",[26,3878,3879],{},"databricks-sdk>=0.89.0",". Register to Unity Catalog, deploy via ",[26,3882,3883],{},"agents.deploy(scale_to_zero_enabled=True)",[22,3885,3886,3887,3889,3890,3892,3893,3895,3896,3898,3899,3902,3903,3905,3906,3909,3910,3889,3913,3916],{},"Query endpoint with OpenAI client, passing ",[26,3888,3811],{}," in ",[26,3891,3853],{}," for persistence. Validate: Reuse ",[26,3894,3811],{}," across calls; follow-up responses reference prior details (e.g., \"motion\", \"vision subsystems\"). Gotchas: Distinct ",[26,3897,3752],{}," API (30min debug); direct ",[26,3900,3901],{},"psycopg.connect","; correct host path (",[26,3904,3760],{},"); no ",[26,3907,3908],{},"input_example"," for custom inputs—use ",[26,3911,3912],{},"output_path",[26,3914,3915],{},"mlflow.models.predict"," tests.",[22,3918,3919],{},"Outcome: Production RAG agent with verifiable memory across stateless requests, Lakebase accumulating thread histories for scalable, context-aware Q&A.",{"title":61,"searchDepth":62,"depth":62,"links":3921},[3922,3923,3924],{"id":3700,"depth":62,"text":3701},{"id":3741,"depth":62,"text":3742},{"id":3823,"depth":62,"text":3824},[126],{"content_references":3927,"triage":3936},[3928,3930,3931,3933,3935],{"type":74,"title":3929,"context":77},"ai_parse_document (Version 2.0)",{"type":74,"title":3730,"context":77},{"type":74,"title":3932,"context":77},"Databricks Lakebase",{"type":74,"title":3934,"context":77},"Databricks Vector Search",{"type":74,"title":3873,"context":77},{"relevance":95,"novelty":96,"quality":96,"actionability":95,"composite":3937,"reasoning":3938},4.55,"Category: AI Automation. The article provides a practical solution for maintaining conversation history in RAG agents, addressing a specific pain point for developers working with AI tools. It offers a detailed implementation guide using Databricks Lakebase, making it immediately actionable for the target audience.","\u002Fsummaries\u002Fa5aba0cb38720693-persist-rag-memory-across-turns-with-lakebase-post-summary","2026-05-05 05:52:01","2026-05-05 16:09:31",{"title":3690,"description":61},{"loc":3939},"a5aba0cb38720693","Towards AI","https:\u002F\u002Fpub.towardsai.net\u002Fyour-rag-agent-forgets-everything-after-one-message-heres-how-i-fixed-it-with-databricks-2f0f80466b4f?source=rss----98111c9905da---4","summaries\u002Fa5aba0cb38720693-persist-rag-memory-across-turns-with-lakebase-post-summary",[110,112,111,113],"Swap LangChain's InMemorySaver for PostgresSaver backed by Databricks Lakebase to maintain conversation history in RAG agents, enabling context-aware multi-turn responses like resolving 'it' to prior mentions across Model Serving requests.",[113],"G08HT7Blya2Ug75JXQwU-WIN97b3smFVa8BguzdJPW4",{"id":3953,"title":3954,"ai":3955,"body":3960,"categories":4074,"created_at":68,"date_modified":68,"description":61,"extension":69,"faq":68,"featured":70,"kicker_label":68,"meta":4075,"navigation":99,"path":4091,"published_at":4092,"question":68,"scraped_at":4093,"seo":4094,"sitemap":4095,"source_id":4096,"source_name":4097,"source_type":106,"source_url":4098,"stem":4099,"tags":4100,"thumbnail_url":68,"tldr":4101,"tweet":68,"unknown_tags":4102,"__hash__":4103},"summaries\u002Fsummaries\u002Fde0862b63c6bb424-60-min-fix-hardcoded-agent-to-scalable-rag-beast-summary.md","60-Min Fix: Hardcoded Agent to Scalable RAG Beast",{"provider":7,"model":8,"input_tokens":3956,"output_tokens":3957,"processing_time_ms":3958,"cost_usd":3959},8863,2447,21977,0.0029736,{"type":14,"value":3961,"toc":4066},[3962,3966,3969,3972,3975,3979,3982,3985,3988,3992,4002,4005,4008,4011,4015,4018,4021,4025,4028,4031,4035],[17,3963,3965],{"id":3964},"jacobs-vibe-coded-prototype-strengths-and-hardcoded-limits","Jacob's Vibe-Coded Prototype: Strengths and Hardcoded Limits",[22,3967,3968],{},"Jacob Badish, a non-technical executive, built 'Project Titanium' solo during evenings and weekends. The agent targets executives at customer companies, researches their pain points via Google Search grounding, verifies facts to curb hallucinations, and drafts personalized outreach emails tying issues to Google solutions. It uses parallel 'fan-out' tasks for multi-company research, exponential backoff for reliability, low temperature for factual outputs, and Gemini SDK calls.",[22,3970,3971],{},"\"I vibe coded this in the evenings and weekends. I was blown away at how doable it was. If I could do it, anyone can do it,\" Jacob says. Key wins: Reduced runtime from 15 minutes via parallelism; self-taught robustness like backoff from Gemini prompting. But limits: Hardcoded 10-12 case studies lead to repetitive, non-scalable outputs. With 1,600+ public Google case studies available, dynamism is needed for team rollout.",[22,3973,3974],{},"Luis Sala praises the structure: \"You are actually doing what's called a fan out... Essentially we can think of them as sub-agents each one responsible for processing a single account.\" Yet, hardcoded data and basic SDK make scaling brittle.",[17,3976,3978],{"id":3977},"migrating-to-adk-maintainable-agent-foundations","Migrating to ADK: Maintainable Agent Foundations",[22,3980,3981],{},"Luis recommends shifting from raw Gemini SDK to Agent Development Kit (ADK) for production. ADK enables modular agents (e.g., sequential pipelines) while replicating v1 workflow first, then iterating. They prompt a coding agent (using Antigravity skills) to port code: Generate plan, verify, build root\u002Fsequential agents for research, verification, email drafting.",[22,3983,3984],{},"\"When developing an agent, it is absolutely perfectly a legitimate tactic to use the native SDK... however... shift over to a specialized SDK specifically designed for agents,\" Luis advises. Baby steps preserve fan-out parallelism. ADK code stays Python, adds env vars for GCP creds. Hiccups like freezes are debugged live, emphasizing iterative planning: \"The idea of creating a plan is vital. We don't want to just start coding without having at least an idea.\"",[22,3986,3987],{},"Jacob concurs: \"I always now add in then reverify your work. Make it go back a second time cuz it catches things that it misses.\"",[17,3989,3991],{"id":3990},"dynamic-case-studies-via-crawler-and-vertex-ai-vector-search","Dynamic Case Studies via Crawler and Vertex AI Vector Search",[22,3993,3994,3995,4001],{},"Core upgrade: Replace hardcoded studies with RAG. Luis' coding agent builds a Playwright crawler for Google's case study site (",[3996,3997,3998],"a",{"href":3998,"rel":3999},"https:\u002F\u002Fcloud.google.com\u002Fcustomers",[4000],"nofollow","). Phase 1: Load pages, click 'show more' repeatedly, extract 1,600+ URLs. Phase 2: Fetch HTML, use Gemini to reformat as markdown JSON, chunk and embed into Vertex AI Vector Search 2.0.",[22,4003,4004],{},"No local ChromaDB or Pinecone—managed Vertex for scalability. Query function hybrids semantic + text search: \"We're going to execute a semantic search... and then... a text search and we're going to combine those results... sometimes you might need to do a hybrid search.\"",[22,4006,4007],{},"Ingestion outputs massive JSON; agent queries tie company pains to top matches. Live demo: Input company\u002Frole, triggers searches, vector retrieval, consolidated intel, relevant cases, punchy email.",[22,4009,4010],{},"\"The accuracy and value that this can bring now having a vector database really up and running... it's incredible,\" Jacob exclaims post-demo.",[17,4012,4014],{"id":4013},"production-polish-ui-deployment-and-trade-offs","Production Polish: UI, Deployment, and Trade-offs",[22,4016,4017],{},"They add a simple Firebase UI for company\u002Frole input, copy-paste outputs. Next: Code cleanup, blog post (links in description). Jacob critiques: Luis spent 20 minutes explaining before coding—\"trying to get to the production building phase quicker.\" Luis admits: \"I think the problem is I talked too much.\"",[22,4019,4020],{},"Trade-offs: ADK boosts maintainability but introduces agent-specific patterns; Vertex scales but ties to GCP. Crawler handles dynamic sites but risks changes (e.g., button selectors). Hybrid search balances precision\u002Frecall.",[17,4022,4024],{"id":4023},"qa-deep-dive-vector-architecture-and-realities","Q&A Deep Dive: Vector Architecture and Realities",[22,4026,4027],{},"Post-video chat unpacks: Crawler uses Playwright CLI for headless browsing. Gemini structures content pre-embed. Chunking: Markdown per case study, Gemini-extracted for relevance. Alternatives like Chroma viable locally, but Vertex for prod.",[22,4029,4030],{},"\"We first needed to create a crawler that could crawl a specific website... extract the URLs... then... content extraction process,\" Luis details. Exposure via ADK functions. Jacob notes chat energy mirrored his questions, validating common pains.",[17,4032,4034],{"id":4033},"key-takeaways","Key Takeaways",[4036,4037,4038,4042,4045,4048,4051,4054,4057,4060,4063],"ul",{},[4039,4040,4041],"li",{},"Start agents with raw SDKs like Gemini for prototypes, migrate to ADK for modularity and sequential pipelines.",[4039,4043,4044],{},"Build reliability early: Fan-out parallelism, exponential backoff, low temperature, verify prompts.",[4039,4046,4047],{},"For RAG on web data, chain Playwright crawler (URL discovery + content fetch) with LLM markdown extraction before vector ingest.",[4039,4049,4050],{},"Use hybrid semantic + text search in Vertex AI for robust retrieval; combine results explicitly.",[4039,4052,4053],{},"Plan before coding: Prompt coding agents (e.g., Antigravity) for step-by-step ports, always reverify.",[4039,4055,4056],{},"Add UI last (e.g., Firebase) for usability; polish code readability post-MVP.",[4039,4058,4059],{},"Non-technical builders: Iterate via Gemini collaboration—\"go back and forth... rewrite the code redeploy the code test it.\"",[4039,4061,4062],{},"Scale prototypes by dynamic data: Crawl once, query forever vs. hardcoding.",[4039,4064,4065],{},"Timebox fixes: 60 minutes forces focus, exposes real hiccups like freezes or rate limits.",{"title":61,"searchDepth":62,"depth":62,"links":4067},[4068,4069,4070,4071,4072,4073],{"id":3964,"depth":62,"text":3965},{"id":3977,"depth":62,"text":3978},{"id":3990,"depth":62,"text":3991},{"id":4013,"depth":62,"text":4014},{"id":4023,"depth":62,"text":4024},{"id":4033,"depth":62,"text":4034},[],{"content_references":4076,"triage":4089},[4077,4079,4081,4083,4085,4087],{"type":74,"title":4078,"context":77},"Agent Development Kit",{"type":74,"title":4080,"context":77},"Antigravity",{"type":74,"title":4082,"context":77},"Vertex AI Vector Search",{"type":74,"title":4084,"context":77},"Gemini API",{"type":74,"title":4086,"context":77},"Playwright",{"type":74,"title":4088,"context":77},"Firebase",{"relevance":95,"novelty":96,"quality":96,"actionability":96,"composite":97,"reasoning":4090},"Category: AI Automation. The article provides a detailed walkthrough of refactoring a hardcoded agent into a scalable RAG system, addressing practical challenges and solutions relevant to AI product builders. It offers actionable insights on using the Agent Development Kit (ADK) for modular agents, which is directly applicable to the audience's work.","\u002Fsummaries\u002Fde0862b63c6bb424-60-min-fix-hardcoded-agent-to-scalable-rag-beast-summary","2026-04-15 16:48:15","2026-04-19 03:42:38",{"title":3954,"description":61},{"loc":4091},"de0862b63c6bb424","Google Cloud Tech","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=md2VFN6SojQ","summaries\u002Fde0862b63c6bb424-60-min-fix-hardcoded-agent-to-scalable-rag-beast-summary",[110,111,112,113],"Luis Sala and Jacob Badish refactor Jacob's 'vibe-coded' outreach agent from hardcoded case studies to a production RAG system using ADK, Vertex AI Vector Search, and Gemini in 60 minutes.",[113],"ir5m8xfzv0Go-KyY011OiObKLLVtI7sEpqZntDy98hU",{"id":4105,"title":4106,"ai":4107,"body":4112,"categories":4160,"created_at":68,"date_modified":68,"description":61,"extension":69,"faq":68,"featured":70,"kicker_label":68,"meta":4161,"navigation":99,"path":4179,"published_at":4180,"question":68,"scraped_at":4181,"seo":4182,"sitemap":4183,"source_id":4184,"source_name":3945,"source_type":106,"source_url":4185,"stem":4186,"tags":4187,"thumbnail_url":68,"tldr":4188,"tweet":68,"unknown_tags":4189,"__hash__":4190},"summaries\u002Fsummaries\u002F0b9fa40b6f494a7b-local-sovereign-memory-outshines-cloud-for-ai-agen-summary.md","Local Sovereign Memory Outshines Cloud for AI Agents",{"provider":7,"model":8,"input_tokens":4108,"output_tokens":4109,"processing_time_ms":4110,"cost_usd":4111},8793,1908,26488,0.00220575,{"type":14,"value":4113,"toc":4155},[4114,4118,4121,4124,4128,4131,4138,4142,4145,4148],[17,4115,4117],{"id":4116},"cloud-embeddings-lock-you-in-sovereign-keeps-you-free","Cloud Embeddings Lock You In, Sovereign Keeps You Free",[22,4119,4120],{},"Cloud memory services like Pinecone, Mem0 cloud, and Supermemory offer zero-ops scaling to billions of vectors and managed compliance (SOC2, HIPAA), but force all data egress, incur per-query costs that compound at scale, add 100-400ms network latency, and trap intelligence in proprietary formats. Sovereign alternatives (local SQLite\u002FDuckDB) deliver sub-10ms recall offline, flat pricing (e.g., VEKTOR's $9\u002Fmo unlimited), and true ownership—no lock-in means your agent's months of memories migrate freely. The market's $7.84B in 2025 growing to $52.62B by 2030 (46.3% CAGR) amplifies this: Gartner forecasts 40% of enterprise apps embedding agents by 2026, making memory sovereignty essential to avoid restarting intelligence post-migration or shutdown.",[22,4122,4123],{},"Full-context hacks like LangChain buffer fail production: ECAI 2025 benchmark (arXiv:2504.19413) shows 9.87s median latency, 17.12s p95, and 14x token costs vs. selective retrieval. Vector DBs (Pinecone, Weaviate, Qdrant) excel at storage but lack curation—conflicts accumulate without native deduplication or lifecycle management.",[17,4125,4127],{"id":4126},"sovereign-tools-solve-all-four-memory-dimensions","Sovereign Tools Solve All Four Memory Dimensions",[22,4129,4130],{},"Real memory stacks handle storage\u002Findexing, curation (dedup\u002Fcontradictions), retrieval (semantic\u002Ftemporal precision), and lifecycle (consolidation\u002Fforgetting). Letta (MemGPT) tiers core\u002Frecall\u002Farchival memories for 3.4x long-horizon gains (MemGPT paper), self-hosts sovereignly, but adds ops complexity without native MCP servers. Cognee builds entity-deduplicated knowledge graphs for richer reasoning, prioritizing local setups. Zep adds temporal decay—recent memories outweigh old ones semantically. Mem0 leads user personalization with cloud-first dedup but offers OSS self-host escape.",[22,4132,4133,4134,4137],{},"VEKTOR maximizes sovereign impact: Local SQLite yields 8ms avg\u002F50ms p95 recall. AUDN curation (ADD new info, UPDATE superseding facts, DELETE invalids, NO_OP duplicates) prevents contradictions at write-time. REM consolidation idles to compress 50 fragments into 3 insights. Four-layer graph (semantic cosine, causal chains, temporal order, entity co-occurrence) boosts recall precision to 97.3%—e.g., ",[26,4135,4136],{},"memory.recall(\"Q3 strategy\")"," prioritizes project-tied, recent causal matches over pure similarity. Native MCP for Claude Desktop\u002FCursor\u002FVS Code, Node.js\u002FTS focus. Trade-offs: no Python\u002Fmulti-user\u002Fbrowser ext yet.",[17,4139,4141],{"id":4140},"vex-and-vek-sync-break-cloud-dependencies","Vex and Vek-Sync Break Cloud Dependencies",[22,4143,4144],{},"Cloud lock-in kills portability—Pinecone vectors don't import to Weaviate. Vex (github.com\u002FVektor-Memory\u002FVex) migrates between Pinecone\u002FWeaviate\u002FQdrant\u002FChroma\u002FMilvus\u002FVEKTOR, preserving metadata\u002Fnamespaces\u002Frelations, enabling cloud-to-sovereign shifts post-validation.",[22,4146,4147],{},"MCP fragmentation (Claude\u002FCursor\u002FWindsurf\u002FVS Code\u002FCline) demands manual configs. Vek-Sync (github.com\u002FVektor-Memory\u002FVek-Sync) syncs from one versioned source, treating MCP as infrastructure—like .env for AI editors.",[22,4149,4150,4154],{},[4151,4152,4153],"strong",{},"Decision rule:"," Prototype on cloud (Mem0\u002FSupermemory for MCP ease), migrate via Vex to sovereign (VEKTOR\u002FLetta) for production. Sovereign scores: VEKTOR 10\u002F10, Letta\u002FCognee\u002FQdrant 7\u002F10, Mem0 3\u002F10, Pinecone 1\u002F10.",{"title":61,"searchDepth":62,"depth":62,"links":4156},[4157,4158,4159],{"id":4116,"depth":62,"text":4117},{"id":4126,"depth":62,"text":4127},{"id":4140,"depth":62,"text":4141},[126],{"content_references":4162,"triage":4177},[4163,4168,4170,4174],{"type":4164,"title":4165,"url":4166,"context":4167},"paper","ECAI 2025 benchmark","arXiv:2504.19413","cited",{"type":4164,"title":4169,"context":4167},"MemGPT paper",{"type":74,"title":4171,"url":4172,"context":4173},"Vex","https:\u002F\u002Fgithub.com\u002FVektor-Memory\u002FVex","recommended",{"type":74,"title":4175,"url":4176,"context":4173},"Vek-Sync","https:\u002F\u002Fgithub.com\u002FVektor-Memory\u002FVek-Sync",{"relevance":95,"novelty":96,"quality":96,"actionability":96,"composite":97,"reasoning":4178},"Category: AI Automation. The article provides a detailed comparison between cloud and local sovereign memory for AI agents, addressing a specific pain point regarding vendor lock-in and performance. It offers actionable insights on memory management strategies and tools like VEKTOR and MemGPT, which can be directly applied by product builders.","\u002Fsummaries\u002F0b9fa40b6f494a7b-local-sovereign-memory-outshines-cloud-for-ai-agen-summary","2026-05-09 12:37:07","2026-05-09 15:36:51",{"title":4106,"description":61},{"loc":4179},"0b9fa40b6f494a7b","https:\u002F\u002Fpub.towardsai.net\u002Fcloud-embeddings-vs-local-sovereign-memory-ai-agent-memory-layer-compared-2026-21461bf8a4aa?source=rss----98111c9905da---4","summaries\u002F0b9fa40b6f494a7b-local-sovereign-memory-outshines-cloud-for-ai-agen-summary",[110,111,113],"AI agent memory splits into cloud (fast setup, lock-in risks) vs. local sovereign (zero egress, flat costs, full ownership). Sovereign wins long-term with sub-10ms recall and no vendor dependency, as in VEKTOR's 8ms graph-based system.",[113],"__LVBx_ARCxaz-ZzlHT4QoT5yVZxpynZymNNc8sAqD8",{"id":4192,"title":4193,"ai":4194,"body":4199,"categories":4230,"created_at":68,"date_modified":68,"description":61,"extension":69,"faq":68,"featured":70,"kicker_label":68,"meta":4231,"navigation":99,"path":4245,"published_at":4246,"question":68,"scraped_at":4247,"seo":4248,"sitemap":4249,"source_id":4250,"source_name":4251,"source_type":106,"source_url":4252,"stem":4253,"tags":4254,"thumbnail_url":68,"tldr":4255,"tweet":4256,"unknown_tags":4257,"__hash__":4258},"summaries\u002Fsummaries\u002F57196811b5e73d47-pair-openclaw-hermes-to-halve-ai-costs-summary.md","Pair OpenClaw + Hermes to Halve AI Costs",{"provider":7,"model":8,"input_tokens":4195,"output_tokens":4196,"processing_time_ms":4197,"cost_usd":4198},6732,1817,26337,0.00174805,{"type":14,"value":4200,"toc":4225},[4201,4205,4208,4211,4215,4218,4222],[17,4202,4204],{"id":4203},"match-agent-strengths-to-tasks-for-massive-savings","Match Agent Strengths to Tasks for Massive Savings",[22,4206,4207],{},"Single agents force premium models like Opus ($75+\u002Fmil tokens) on all tasks, inflating bills and creating bottlenecks—one failure halts everything. Dual agents fix this: OpenClaw excels as a stable workhorse for complex, long tasks via daily updates and integrations (Gmail, Slack, Notion, Calendar); pair it with Opus 4.7 (upgrade from 4.6 yields real performance jumps) for client-facing work, multi-step reasoning, or high-stakes output. Hermes shines as a lightweight specialist: token-efficient, self-improving (auto-writes skills for repeat tasks), cron-ready, runs on cheap\u002Flocal models (e.g., Sonnet 4.6). Route high-stakes to OpenClaw (proposals, competitive research); volume\u002Frepeatable to Hermes (summaries, quick research, content repurposing, scheduled jobs). Result: parallel processing, backups, and 50% bill cut by avoiding Opus on low-intelligence needs—labs like OpenAI\u002FAnthropic validate this via cross-tool integrations (e.g., OpenAI plugin in Claude Code for mutual error-checking).",[22,4209,4210],{},"Adopt the \"Does this need Opus?\" habit: For client follow-ups, proposals, or error-costly tasks, use OpenClaw (worth every token). For transcripts, web searches, note cleanups, Slack drafts, or morning summaries, Hermes delivers identical (often faster) output at fraction of cost. Internalize this to exponentially drop spend without guilt.",[17,4212,4214],{"id":4213},"plan-execute-review-workflow-delivers-opus-quality-cheaply","Plan-Execute-Review Workflow Delivers Opus Quality Cheaply",[22,4216,4217],{},"Split token-heavy builds: OpenClaw plans (Opus thinks hard—good plans prevent 15 bad executions); Hermes executes on cheap model; OpenClaw reviews (catches misses like edge cases, missing fields). Demo: Prompt OpenClaw to plan HTML\u002FTailwind sponsor deal tracker (pull real deals from list, flag stuck ones, stages\u002Fcolumns\u002Fstatus logic)—outputs detailed spec in ~2min. Paste to Hermes (\"Build this plan\"): generates full page with real names, badges, values, dates, red flags. Review in OpenClaw flags 2-3 issues (e.g., blast contact visibility, status rendering). Total: 2min build, Opus strategy\u002FQA, cheap execution—same quality, fraction cost. V2: Wire Gmail for auto-triage\u002Fupdates.",[17,4219,4221],{"id":4220},"shared-workspace-unifies-agents-for-collective-improvement","Shared Workspace Unifies Agents for Collective Improvement",[22,4223,4224],{},"Use one Notion workspace (or ClickUp, Obsidian, Google Drive): OpenClaw folder (its logs\u002Fdecisions), Hermes folder (its logs), shared folder (cross-learnings: fixed mistakes, task decisions, client context). Agents read shared first, write to it post-task—Hermes video repurposing trick informs OpenClaw; OpenClaw proposal structure aids Hermes. Prevents silos\u002Frepeated errors; agents evolve together. Full 4-part setup: (1) Split heavy\u002Fvolume tasks; (2) Plan (OpenClaw)-Execute (Hermes)-Review (OpenClaw); (3) Delegate via \"needs Opus?\"; (4) Shared memory.",{"title":61,"searchDepth":62,"depth":62,"links":4226},[4227,4228,4229],{"id":4203,"depth":62,"text":4204},{"id":4213,"depth":62,"text":4214},{"id":4220,"depth":62,"text":4221},[129],{"content_references":4232,"triage":4243},[4233,4235,4237,4240],{"type":74,"title":4234,"context":4173},"OpenClaw",{"type":74,"title":4236,"context":4173},"Hermes",{"type":74,"title":4238,"url":4239,"context":77},"salesdone.ai","https:\u002F\u002Fsalesdone.ai",{"type":79,"title":4241,"url":4242,"context":77},"Systems to Scale Skool Community","https:\u002F\u002Fwww.skool.com\u002Fsystems-to-scale-9517\u002Fabout",{"relevance":95,"novelty":96,"quality":96,"actionability":95,"composite":3937,"reasoning":4244},"Category: AI Automation. The article provides a practical framework for using dual agents, OpenClaw and Hermes, to optimize AI costs and improve efficiency, addressing a specific pain point of cost management in AI deployment. It offers actionable steps for implementing this strategy, such as adopting the 'Does this need Opus?' habit to evaluate task requirements.","\u002Fsummaries\u002F57196811b5e73d47-pair-openclaw-hermes-to-halve-ai-costs-summary","2026-05-08 13:45:03","2026-05-09 15:10:58",{"title":4193,"description":61},{"loc":4245},"af392afcadc44f1c","Nick Puru | AI Automation","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=qk0yiCS2nv0","summaries\u002F57196811b5e73d47-pair-openclaw-hermes-to-halve-ai-costs-summary",[110,111,113],"Run OpenClaw on Opus for high-stakes planning\u002Freview and Hermes on cheap models for execution\u002Fvolume tasks in a shared workspace—delivers Opus-quality output at 50% lower cost via parallel work and task matching.","Explains routing tasks between [OpenClaw](https:\u002F\u002Fsalesdone.ai) on Opus for high-stakes planning\u002Freview and Hermes on cheap models for routine execution, with a live demo building an HTML sponsor deal tracker via plan-execute-review. Builds to shared workspaces and task triage habits for cost savings.",[113],"q5_cPQ9LI-UB83daecEPGZ7YVoHyfv2fsMJivQ6KDa4"]