{"id":26885,"date":"2026-07-18T00:48:22","date_gmt":"2026-07-18T00:48:22","guid":{"rendered":"https:\/\/umang.pk\/2026\/07\/18\/python-%d9%85%db%8c%da%ba-llm-harness-%da%a9%d9%88-%d8%a8%d8%b7%d9%88%d8%b1-%d8%ac%d8%ac-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-ai-%d8%a7%db%8c\/"},"modified":"2026-07-18T00:48:23","modified_gmt":"2026-07-18T00:48:23","slug":"python-%d9%85%db%8c%da%ba-llm-harness-%da%a9%d9%88-%d8%a8%d8%b7%d9%88%d8%b1-%d8%ac%d8%ac-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-ai-%d8%a7%db%8c","status":"publish","type":"post","link":"https:\/\/umang.pk\/ur\/2026\/07\/18\/python-%d9%85%db%8c%da%ba-llm-harness-%da%a9%d9%88-%d8%a8%d8%b7%d9%88%d8%b1-%d8%ac%d8%ac-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-ai-%d8%a7%db%8c\/","title":{"rendered":"Python \u0645\u06cc\u06ba LLM Harness \u06a9\u0648 \u0628\u0637\u0648\u0631 \u062c\u062c \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 AI \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u06a9\u06cc\u0633\u06d2 \u0644\u06af\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4"},"content":{"rendered":"\n<div id=\"\">\n<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0622\u067e \u06a9\u0648 \u062f\u06a9\u06be\u0627\u0626\u06cc\u06ba \u06af\u06d2 \u06a9\u06c1 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0642\u0627\u0628\u0644 \u062a\u0634\u062e\u06cc\u0635 \u0679\u0648\u0644 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0645\u0642\u0627\u0645\u06cc AI \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u06a9\u06cc\u0633\u06d2 \u0644\u06af\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4<\/p>\n<p>\u06c1\u0627\u0631\u0646\u0633 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u06a9\u06d2 \u0627\u06cc\u06a9 \u0633\u06cc\u0679 \u06a9\u06d2 \u062e\u0644\u0627\u0641 \u0686\u0644\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u062f\u0639\u0648\u0648\u06ba \u0627\u0648\u0631 LLM \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0646\u062a\u0627\u0626\u062c \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0648\u0627\u0636\u062d \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0633\u0645\u0631\u06cc \u067e\u0631\u0646\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>LangChain v1\u060c Ollama\u060c Qwen\u060c \u0627\u0648\u0631 Python \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0633\u0628 \u06a9\u0686\u06be \u0622\u067e \u06a9\u06d2 \u0627\u067e\u0646\u06d2 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u067e\u0631 \u0686\u0644\u062a\u0627 \u06c1\u06d2\u060c \u0644\u06c1\u0630\u0627 \u06a9\u0648\u0626\u06cc API \u0644\u0627\u06af\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-table-of-contents\">\u0627\u0646\u0688\u06cc\u06a9\u0633<\/h2>\n<h2 id=\"heading-background\">\u067e\u0633 \u0645\u0646\u0638\u0631<\/h2>\n<p>\u0632\u06cc\u0627\u062f\u06c1 \u062a\u0631 \u0645\u0642\u0627\u0645\u06cc AI \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u0627 \u0627\u0633\u06cc \u0637\u0631\u062d \u062a\u062c\u0631\u0628\u06c1 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0628\u0633 \u0686\u0646\u062f \u0633\u0648\u0627\u0644\u0627\u062a \u062f\u0631\u062c \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0635\u062d\u06cc\u062d \u062c\u0648\u0627\u0628\u0627\u062a \u062f\u06a9\u06be\u0627\u0626\u06d2 \u062c\u0627\u0626\u06cc\u06ba \u06af\u06d2 \u0627\u0648\u0631 \u0622\u067e \u06a9\u0648 \u0628\u06be\u06cc\u062c\u06d2 \u062c\u0627\u0626\u06cc\u06ba \u06af\u06d2\u06d4 \u06cc\u06c1 \u0627\u0633 \u0648\u0642\u062a \u062a\u06a9 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0628 \u062a\u06a9 \u06a9\u06c1 \u0622\u067e \u067e\u0631\u0627\u0645\u067e\u0679 \u06a9\u0648 \u062a\u0628\u062f\u06cc\u0644 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u06d2\u060c \u0645\u0627\u0688\u0644 \u062a\u0628\u062f\u06cc\u0644 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u06d2\u060c \u06cc\u0627 \u06a9\u0648\u0626\u06cc \u0679\u0648\u0644 \u0634\u0627\u0645\u0644 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u06d2\u06d4 \u067e\u06be\u0631 \u06a9\u0686\u06be \u062e\u0627\u0645\u0648\u0634\u06cc \u0633\u06d2 \u0679\u0648\u0679 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u06c1\u0645\u06cc\u06ba \u0627\u0633 \u0648\u0642\u062a \u062a\u06a9 \u0646\u0648\u0679\u0633 \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u0627 \u062c\u0628 \u062a\u06a9 \u06a9\u06c1 \u0628\u06c1\u062a \u062f\u06cc\u0631 \u0646\u06c1 \u06c1\u0648 \u062c\u0627\u0626\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u06a9\u0648 \u067e\u06a9\u0691\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0633\u0627\u062f\u06c1 \u067e\u0627\u0626\u062a\u06be\u0648\u0646 \u06a9\u0648\u0688 \u0645\u06cc\u06ba \u06cc\u0648\u0646\u0679 \u0679\u06cc\u0633\u0679 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 AI \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u0648 \u06cc\u06c1 \u0645\u0641\u062a \u0645\u06cc\u06ba \u0646\u06c1\u06cc\u06ba \u0645\u0644\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1\u0627\u06ba \u062a\u06a9 \u06a9\u06c1 \u0627\u06cc\u06a9 \u06c1\u06cc \u0627\u0646 \u067e\u0679\u0633 \u06a9\u06d2 \u0633\u0627\u062a\u06be\u060c \u0627\u06cc\u062c\u0646\u0679 \u062f\u0648\u0691\u0646\u06d2 \u0633\u06d2 \u0645\u062e\u062a\u0644\u0641 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u0628\u0631\u062a\u0627\u0624 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0627\u0648\u0631 \u0686\u06be\u0648\u0679\u06cc \u062a\u0628\u062f\u06cc\u0644\u06cc\u0627\u06ba \u0631\u062c\u0639\u062a \u06a9\u0627 \u0633\u0628\u0628 \u0628\u0646 \u0633\u06a9\u062a\u06cc \u06c1\u06cc\u06ba \u062c\u0646 \u0633\u06d2 \u0645\u062d\u0631\u0648\u0645 \u06c1\u0648\u0646\u0627 \u0622\u0633\u0627\u0646 \u06c1\u06d2\u06d4 \u0627\u06cc\u06a9 \u0633\u06d2 \u0632\u06cc\u0627\u062f\u06c1 \u0627\u0646 \u067e\u0679\u0633 \u06a9\u06d2 \u062e\u0644\u0627\u0641 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u062c\u0627\u0646\u0686\u0646\u06d2 \u0627\u0648\u0631 \u0627\u0633 \u06a9\u06d2 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0648 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u062a\u06a9\u0631\u0627\u0631 \u0637\u0631\u06cc\u0642\u06d2 \u06a9\u06d2 \u0628\u063a\u06cc\u0631\u060c \u06c1\u0645 \u0645\u06cc\u06ba \u0633\u06d2 \u0627\u06a9\u062b\u0631 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0631\u0648\u06cc\u06d2 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u0644\u06af\u0627 \u0644\u06cc\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0627\u06cc\u06a9 \u0622\u0633\u0627\u0646 \u062d\u0644 \u06cc\u06c1 \u06c1\u0648\u06af\u0627 \u06a9\u06c1 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u062a\u0634\u062e\u06cc\u0635\u06cc \u0633\u06cc\u0679 \u0627\u067e \u0628\u0646\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2 \u062c\u0633 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 Python \u0627\u0633\u06a9\u0631\u067e\u0679\u060c \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u06a9\u06cc \u0641\u06c1\u0631\u0633\u062a\u060c \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0686\u06cc\u06a9\u060c \u0627\u0648\u0631 LLM-\u062c\u062c \u0634\u0627\u0645\u0644 \u06c1\u0648\u06ba\u06d4 \u06cc\u06c1 \u062a\u0628\u062f\u06cc\u0644\u06cc\u0648\u06ba \u06a9\u06d2 \u0648\u0627\u0642\u0639 \u06c1\u0648\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u0648 \u062c\u0627\u0646\u0686\u0646\u06d2 \u06a9\u0627 \u0627\u06cc\u06a9 \u0639\u0645\u0644\u06cc \u0637\u0631\u06cc\u0642\u06c1 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u062c\u0627\u0631\u06cc \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0622\u067e \u06a9\u0648 \u0627\u067e\u0646\u06d2 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u067e\u0631 \u0627\u0648\u0644\u0627\u0645\u0627 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4 \u06cc\u06c1 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 macOS\u060c Windows \u0627\u0648\u0631 Linux \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u06cc\u06ba 32GB RAM \u06a9\u06d2 \u0633\u0627\u062a\u06be MacBook Pro \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631 \u0631\u06c1\u0627 \u06c1\u0648\u06ba\u060c \u0644\u06cc\u06a9\u0646 \u0627\u06af\u0631 \u0622\u067e Ollama \u06a9\u06d2 \u0686\u06be\u0648\u0679\u06d2 Qwen \u0645\u0627\u0688\u0644 \u06a9\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u062a\u0648 \u0622\u067e \u0627\u0633\u06d2 \u06a9\u0645 \u0645\u06cc\u0645\u0648\u0631\u06cc \u0633\u0633\u0679\u0645 \u067e\u0631 \u0686\u0644\u0627 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-what-is-agent-evaluation\">\u0627\u06cc\u062c\u0646\u0679 \u06a9\u06cc \u062a\u0634\u062e\u06cc\u0635 \u06a9\u06cc\u0627 \u06c1\u06d2\u061f<\/h2>\n<p>\u0627\u06cc\u062c\u0646\u0679 \u06a9\u06cc \u062a\u0634\u062e\u06cc\u0635 \u0627\u0646 \u067e\u0679 \u06a9\u06d2 \u0627\u06cc\u06a9 \u0645\u0642\u0631\u0631\u06c1 \u0633\u06cc\u0679 \u06a9\u06d2 \u062e\u0644\u0627\u0641 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0686\u0644\u0627\u0646\u06d2 \u0627\u0648\u0631 \u062a\u0648\u0642\u0639\u0627\u062a \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0648 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0645\u0634\u0642 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0627\u06cc\u06a9 \u0679\u06cc\u0633\u0679 \u0633\u0648\u06cc\u0679 \u06a9\u06d2 AI \u06a9\u06d2 \u0628\u0631\u0627\u0628\u0631 \u06c1\u06d2\u06d4<\/p>\n<p>\u0645\u0642\u0635\u062f \u06cc\u06c1 \u062b\u0627\u0628\u062a \u06a9\u0631\u0646\u0627 \u0646\u06c1\u06cc\u06ba \u06c1\u06d2 \u06a9\u06c1 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627\u0645\u0644 \u06c1\u06d2\u06d4 \u0645\u0642\u0635\u062f \u0631\u062c\u0639\u062a \u06a9\u0648 \u067e\u06a9\u0691\u0646\u0627 \u06c1\u06d2 \u062c\u0628 \u0622\u067e \u06a9\u0686\u06be \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0627\u06cc\u06a9 \u0645\u0641\u06cc\u062f \u062a\u0634\u062e\u06cc\u0635 \u06a9\u06d2 \u062a\u06cc\u0646 \u062d\u0635\u06d2 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba:<\/p>\n<ol>\n<li>\n<p>\u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633: \u0645\u062a\u0648\u0642\u0639 \u0631\u0648\u06cc\u06d2 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0627\u0646 \u067e\u0679\u0633 \u06a9\u06cc \u0641\u06c1\u0631\u0633\u062a\u06d4<\/p>\n<\/li>\n<li>\n<p>\u062a\u0648\u062b\u06cc\u0642: \u0627\u06cc\u06a9 \u0641\u0646\u06a9\u0634\u0646 \u062c\u0648 \u06c1\u0631 \u0627\u0646 \u067e\u0679 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0648 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p>\u062e\u0644\u0627\u0635\u06c1: \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06cc \u06a9\u0627\u0631\u06a9\u0631\u062f\u06af\u06cc \u06a9\u0648 \u062f\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u062a\u0639\u062f\u062f \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0634\u0645\u0627\u0631 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<\/ol>\n<h2 id=\"heading-what-is-llm-as-a-judge\">\u062c\u062c \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u06a9\u06cc\u0627 \u06c1\u06d2\u061f<\/h2>\n<p>\u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0646\u062a\u0627\u0626\u062c \u06a9\u0648 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u062f\u0648 \u0639\u0645\u0644\u06cc \u0637\u0631\u06cc\u0642\u06d2 \u06c1\u06cc\u06ba\u06d4 \u067e\u06c1\u0644\u0627 \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0686\u06cc\u06a9\u0646\u06af \u06c1\u06d2\u06d4 &quot;\u06a9\u06cc\u0627 \u0622\u0624\u0679 \u067e\u0679 \u0645\u06cc\u06ba \u0644\u0641\u0638 \u067e\u06cc\u0631\u0633 \u0634\u0627\u0645\u0644 \u062a\u06be\u0627\u061f&#8221; \u06cc\u0627 &quot;\u0627\u06cc\u062c\u0646\u0679 <code>word_count<\/code> \u06cc\u06c1 \u0627\u06cc\u06a9 \u0679\u0648\u0644 \u06c1\u06d2\u06d4&#8221; \u06cc\u06c1 \u0633\u0633\u062a\u0627\u060c \u062a\u06cc\u0632 \u0627\u0648\u0631 \u0641\u06cc\u0635\u0644\u06c1 \u06a9\u0646 \u06c1\u06d2\u06d4<\/p>\n<p>\u062f\u0648\u0633\u0631\u0627 \u062c\u062c \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u06c1\u06d2\u06d4 \u0627\u06cc\u06a9 \u0627\u0644\u06af \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u0633\u06d2 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0627\u0646 \u067e\u0679 \u0627\u0648\u0631 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0648 \u067e\u0691\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u067e\u06be\u0631 \u0627\u0633\u06d2 \u0631\u0648\u0628\u0631\u06a9 \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0631\u0648\u0628\u0631\u06a9 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0646\u062a\u06cc\u062c\u06c1 \u06c1\u0648 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0627\u0646 \u0645\u0628\u06c1\u0645 \u0686\u06cc\u0632\u0648\u06ba \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0641\u06cc\u062f \u06c1\u06d2 \u062c\u0646 \u067e\u0631 \u0622\u0633\u0627\u0646\u06cc \u0633\u06d2 \u062f\u0639\u0648\u06cc\u0670 \u0646\u06c1\u06cc\u06ba \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u062a\u0627\u060c \u062c\u06cc\u0633\u06d2 \u06a9\u06c1 &quot;\u06a9\u06cc\u0627 \u062c\u0648\u0627\u0628 \u062f\u0631\u062d\u0642\u06cc\u0642\u062a \u0627\u0633 \u0628\u0627\u062a \u06a9\u06cc \u0646\u0634\u0627\u0646\u062f\u06c1\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0648 \u0635\u0627\u0631\u0641 \u0646\u06d2 \u0645\u0627\u0646\u06af\u0627\u061f&#8221; \u0645\u0646\u0641\u06cc \u067e\u06c1\u0644\u0648 \u06cc\u06c1 \u06c1\u06d2 \u06a9\u06c1 \u062c\u062c \u062e\u0648\u062f \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u06c1\u06cc\u06ba \u0627\u0633 \u0644\u06cc\u06d2 \u0648\u06c1 \u063a\u0644\u0637 \u06c1\u0648 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0627\u06cc\u06a9 \u06c1\u06cc \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0645\u062e\u062a\u0644\u0641 \u0642\u0633\u0645 \u06a9\u06d2 \u0641\u06cc\u0635\u0644\u06d2 \u06a9\u06d2 \u0627\u0634\u0627\u0631\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2\u06d4<\/p>\n<h2 id=\"heading-motivation-and-architecture\">\u062d\u0648\u0635\u0644\u06c1 \u0627\u0641\u0632\u0627\u0626\u06cc \u0627\u0648\u0631 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631<\/h2>\n<p>\u0627\u067e\u0646\u06d2 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u0644\u06af\u0627\u0646\u0627 \u0627\u0633\u06d2 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f \u0627\u06cc\u06a9 \u0642\u062f\u0631\u062a\u06cc \u0627\u06af\u0644\u0627 \u0645\u0631\u062d\u0644\u06c1 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u062c\u0627\u0646\u0646\u0627 \u06a9\u06c1 \u0627\u06cc\u06a9 \u0627\u06cc\u062c\u0646\u0679 \u0645\u062e\u062a\u0644\u0641 \u0642\u0633\u0645 \u06a9\u06d2 \u0622\u062f\u0627\u0646\u0648\u06ba \u0645\u06cc\u06ba \u0642\u0627\u0628\u0644 \u0627\u0639\u062a\u0645\u0627\u062f \u0628\u0631\u062a\u0627\u0624 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0648\u06c1\u06cc \u0686\u06cc\u0632 \u06c1\u06d2 \u062c\u0648 \u0627\u06cc\u06a9 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0642\u0627\u0628\u0644 \u0627\u0639\u062a\u0645\u0627\u062f \u0628\u0646\u0627\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<p>\u0686\u06cc\u0632\u0648\u06ba \u06a9\u0648 \u0633\u0627\u062f\u06c1 \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u062f\u0648 \u0679\u0648\u0644\u0632 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u06cc\u06a9 \u0686\u06be\u0648\u0679\u06d2 \u0645\u0642\u0627\u0645\u06cc \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u062c\u0627\u0626\u0632\u06c1 \u0644\u06cc\u06ba \u06af\u06d2: \u0627\u06cc\u06a9 \u0645\u0648\u062c\u0648\u062f\u06c1 \u0648\u0642\u062a \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0648\u0631 \u062f\u0648\u0633\u0631\u0627 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06cc \u06af\u0646\u062a\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2\u06d4 \u0627\u0633\u0633\u0645\u0646\u0679 \u0679\u0648\u0644 \u0627\u0632\u06af\u0631 \u0645\u06cc\u06ba \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u06a9\u06cc \u0641\u06c1\u0631\u0633\u062a \u067e\u0691\u06be\u062a\u0627 \u06c1\u06d2\u060c \u06c1\u0631 \u06a9\u06cc\u0633 \u06a9\u0648 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0686\u0644\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0686\u06cc\u06a9\u0646\u06af \u0627\u0648\u0631 LLM-\u062c\u062c \u0627\u0633\u06a9\u0648\u0631\u0646\u06af \u06a9\u0627 \u0627\u0637\u0644\u0627\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0633\u0645\u0631\u06cc \u067e\u0631\u0646\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0630\u06cc\u0644 \u06a9\u06cc \u0645\u062b\u0627\u0644 \u06a9\u06d2 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633 \u0645\u06cc\u06ba\u060c Expect_keyword \u0627\u0648\u0631 Expect_tool \u062f\u0648 \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0686\u06cc\u06a9 \u06c1\u06cc\u06ba\u06d4 \u062c\u062c_\u0631\u0648\u0628\u0631\u06a9 \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u062c\u062c\u0648\u06ba \u06a9\u0627 \u0645\u0639\u06cc\u0627\u0631 \u06c1\u06d2\u06d4<\/p>\n<pre><code class=\"language-plaintext\">{\n    \"input\": \"What is the capital of France?\",\n    \"expected_keyword\": \"Paris\",\n    \"expected_tool\": None,\n    \"judge_rubric\": \"The answer should say Paris.\"\n}\n<\/code><\/pre>\n<p>\u0627\u06cc\u062c\u0646\u0679 \u0627\u0648\u0631 \u062c\u062c \u062f\u0648\u0646\u0648\u06ba \u0645\u0642\u0627\u0645\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u0648\u0644\u0627\u0645\u0627 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0686\u0644\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0627\u0633 \u0644\u06cc\u06d2 \u0641\u06cc \u06a9\u0627\u0644 \u06a9\u0648\u0626\u06cc \u0645\u0627\u0688\u0644 API \u0686\u0627\u0631\u062c\u0632 \u0646\u06c1\u06cc\u06ba \u06c1\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-step-1-install-ollama-and-pull-the-model\">\u0645\u0631\u062d\u0644\u06c1 1: \u0627\u0648\u0644\u0627\u0645\u0627 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0645\u0627\u0688\u0644\u0632 \u062f\u0631\u0622\u0645\u062f \u06a9\u0631\u06cc\u06ba\u06d4<\/h2>\n<p>\u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0627\u067e\u0646\u06d2 \u067e\u0644\u06cc\u0679 \u0641\u0627\u0631\u0645 \u06a9\u06d2 \u0644\u06cc\u06d2 Ollama \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u06cc\u06ba\u06d4 \u06c1\u0645 Qwen \u06a9\u0648 \u0627\u067e\u0646\u06d2 \u0627\u06cc\u062c\u0646\u0679 \u0627\u0648\u0631 \u062c\u062c \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2\u06d4 \u0645\u06cc\u06ba \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631 \u0631\u06c1\u0627 \u06c1\u0648\u06ba\u06d4 <code>qwen3.5:4b<\/code>.<\/p>\n<pre><code class=\"language-plaintext\">ollama pull qwen3.5:4b\n<\/code><\/pre>\n<p>\u0627\u06af\u0631 \u0622\u067e \u06a9\u06d2 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u0645\u06cc\u06ba \u06a9\u0645 \u0631\u06cc\u0645 \u06c1\u06d2\u060c \u062a\u0648 \u0622\u067e \u0627\u0633 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2 qwen3.5:0.8b \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0644\u06cc\u06a9\u0646 \u0622\u067e \u06a9\u0648 \u0627\u0633 \u0633\u0627\u0626\u0632 \u0645\u06cc\u06ba \u0632\u06cc\u0627\u062f\u06c1 \u0634\u0648\u0631 \u0627\u0633\u06a9\u0631\u06cc\u0646\u0646\u06af \u0627\u0633\u06a9\u0648\u0631 \u0646\u0638\u0631 \u0622\u0626\u06cc\u06ba \u06af\u06d2\u06d4<\/p>\n<h2 id=\"heading-step-2-install-python-dependencies\">\u0645\u0631\u062d\u0644\u06c1 2: \u0627\u0632\u06af\u0631 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/h2>\n<p>\u0627\u06cc\u06a9 \u0648\u0631\u0686\u0648\u0626\u0644 \u0645\u0627\u062d\u0648\u0644 \u0628\u0646\u0627\u0626\u06cc\u06ba \u0627\u0648\u0631 \u0645\u0637\u0644\u0648\u0628\u06c1 \u067e\u06cc\u06a9\u062c\u0632 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-plaintext\">python3 -m venv venv\nsource venv\/bin\/activate\n\npip install langchain langchain-core langchain-ollama\n<\/code><\/pre>\n<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u0645\u06cc\u06ba <code>langchain>=1.0.0<\/code>.<\/p>\n<h2 id=\"heading-step-3-the-agent-under-test\">\u0645\u0631\u062d\u0644\u06c1 3: \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u062a\u062c\u0631\u0628\u06c1 \u06a9\u06cc\u0627 \u062c\u0627 \u0631\u06c1\u0627 \u06c1\u06d2\u06d4<\/h2>\n<p>\u0622\u0626\u06cc\u06d2 \u0627\u06cc\u06a9 \u0686\u06be\u0648\u0679\u06d2 \u0633\u06d2 \u0679\u0648\u0644 \u06a9\u0627\u0644 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u062c\u0633 \u0645\u06cc\u06ba \u062f\u0648 \u0679\u0648\u0644\u0632 \u06c1\u06cc\u06ba: \u06c1\u0627\u0631\u0646\u0633 \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u0648 \u0645\u0628\u06c1\u0645 \u0646\u0638\u0627\u0645 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u0627\u0646\u062a\u0627 \u06c1\u06d2\u060c \u0644\u06c1\u0630\u0627 \u062a\u0634\u062e\u06cc\u0635 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062e\u0648\u062f \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u06a9\u0686\u06be \u0628\u06be\u06cc \u062a\u0628\u062f\u06cc\u0644 \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0630\u06cc\u0644 \u0645\u06cc\u06ba \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648\u0688 \u062f\u0648 \u0679\u0648\u0644\u0632 \u06a9\u06cc \u0648\u0636\u0627\u062d\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2: <code>current_time()<\/code> \u0645\u0648\u062c\u0648\u062f\u06c1 \u0648\u0642\u062a \u062d\u0627\u0635\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 <code>word_count()<\/code> \u0627\u0646 \u067e\u0679 \u062c\u0645\u0644\u06d2 \u06a9\u06d2 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06cc \u06af\u0646\u062a\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631\u06cc\u06ba\u06d4 \u0627\u06cc\u062c\u0646\u0679 LangChain \u06a9\u0627 \u200b\u200b\u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0628\u0646\u0627\u0626\u06d2 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 <code>build_agent()<\/code> \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u0633\u0633\u0679\u0645 \u067e\u0631\u0627\u0645\u067e\u0679 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<p>\u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u06cc\u06ba \u0628\u0637\u0648\u0631: <code>agent.py<\/code>:<\/p>\n<pre><code class=\"language-python\">from datetime import datetime\n\nfrom langchain.agents import create_agent\nfrom langchain_core.tools import tool\nfrom langchain_ollama import ChatOllama\n\n\n@tool\ndef current_time() -> str:\n    \"\"\"Return the current local date and time.\"\"\"\n    return datetime.now().strftime(\"%Y-%m-%d %H:%M:%S\")\n\n\n@tool\ndef word_count(text: str) -> int:\n    \"\"\"Count the number of words in a piece of text.\"\"\"\n    return len(text.split())\n\n\ndef build_agent():\n    model = ChatOllama(model=\"qwen3.5:4b\", temperature=0)\n    return create_agent(\n        model=model,\n        tools=[current_time, word_count],\n        system_prompt=\"You are a helpful assistant with access to tools.\"\n    )\n<\/code><\/pre>\n<h2 id=\"heading-step-4-write-the-eval-harness\">\u0645\u0631\u062d\u0644\u06c1 4: \u0627\u06cc\u06a9 \u0627\u06cc\u0648\u06cc\u0644\u06cc\u0648\u06cc\u0634\u0646 \u06c1\u0627\u0631\u0646\u0633 \u0628\u0646\u0627\u0626\u06cc\u06ba<\/h2>\n<p>\u06c1\u0631\u0646\u0633 \u06c1\u0631 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u06cc\u0646 \u06a9\u0627\u0645 \u0627\u0646\u062c\u0627\u0645 \u062f\u06cc\u062a\u0627 \u06c1\u06d2:<\/p>\n<ol>\n<li>\n<p>\u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0686\u0644\u0627\u0626\u06cc\u06ba \u0627\u0648\u0631 \u062c\u0648\u0627\u0628\u0627\u062a \u0627\u0648\u0631 \u0679\u0648\u0644 \u06a9\u0627\u0644\u0632 \u062c\u0645\u0639 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p>\u0645\u062a\u0648\u0642\u0639 \u0645\u0637\u0644\u0648\u0628\u06c1 \u0627\u0644\u0641\u0627\u0638 (\u0627\u06af\u0631 \u0645\u0637\u0644\u0648\u0628\u06c1 \u0627\u0644\u0641\u0627\u0638 \u0622\u0624\u0679 \u067e\u0679 \u0645\u06cc\u06ba \u0645\u0648\u062c\u0648\u062f \u06c1\u0648\u06ba) \u0627\u0648\u0631 \u0645\u062a\u0648\u0642\u0639 \u0679\u0648\u0644\u0632 (\u0627\u06af\u0631 \u0679\u0648\u0644\u0632 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06cc\u06d2 \u06af\u0626\u06d2 \u06c1\u0648\u06ba) \u06a9\u06d2 \u062e\u0644\u0627\u0641 \u0633\u0627\u062f\u06c1 \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u062f\u0639\u0648\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0646\u062a\u0627\u0626\u062c \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p>LLM \u062c\u062c \u0633\u06d2 \u0627\u067e\u0646\u06d2 \u0646\u062a\u0627\u0626\u062c \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u0648 \u06a9\u06c1\u06cc\u06ba\u06d4 \u0627\u0633\u06a9\u0631\u06cc\u0646\u0646\u06af \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0646 \u067e\u0679 \u067e\u0631\u0627\u0645\u067e\u0679\u0633 \u0645\u06cc\u06ba \u0627\u0635\u0644 \u0635\u0627\u0631\u0641 \u06a9\u0627 \u0627\u0634\u0627\u0631\u06c1\u060c \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u062c\u0648\u0627\u0628\u0627\u062a\u060c \u0627\u0648\u0631 \u0627\u0633\u06a9\u0648\u0631\u0646\u06af \u0631\u0648\u0628\u0631\u06a9 \u0634\u0627\u0645\u0644 \u06c1\u06cc\u06ba\u06d4 \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u0645\u06cc\u06ba\u060c \u062c\u062c\u0648\u06ba \u0633\u06d2 \u067e\u0648\u0686\u06be\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2: &quot;\u06a9\u06cc\u0627 \u0622\u067e \u06a9\u0627 \u062c\u0648\u0627\u0628 \u0631\u0648\u0628\u0631\u06a9 \u067e\u0631 \u067e\u0648\u0631\u0627 \u0627\u062a\u0631\u062a\u0627 \u06c1\u06d2\u061f \u0628\u0631\u0627\u06c1 \u06a9\u0631\u0645 \u0635\u0631\u0641 \u06c1\u0627\u06ba \u06cc\u0627 \u0646\u06c1 \u0645\u06cc\u06ba \u062c\u0648\u0627\u0628 \u062f\u06cc\u06ba\u06d4&#8221; \u062c\u062c \u06a9\u0627 \u0646\u062a\u06cc\u062c\u06c1 \u06cc\u0627 \u062a\u0648 \u06c1\u0627\u06ba \u06cc\u0627 \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<\/ol>\n<p>\u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u0622\u067e \u06a9\u06d2 \u06a9\u0648\u0688 \u0645\u06cc\u06ba \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0627\u0648\u067e\u0631\u06cc \u062d\u0635\u06d2 \u0645\u06cc\u06ba \u0628\u06cc\u0627\u0646 \u06a9\u06cc\u06d2 \u06af\u0626\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06c1\u0631 \u0635\u0648\u0631\u062a \u0645\u06cc\u06ba\u060c \u06a9\u0648\u0688 \u0679\u0648\u0644 \u06a9\u0627\u0644 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u06a9\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0622\u0624\u0679 \u067e\u0679 \u062d\u0627\u0635\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u067e\u06be\u0631 \u0679\u0648\u0644 \u06a9\u0627\u0644 \u06a9\u0627 \u062c\u0648\u0627\u0628 \u067e\u0631\u0646\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u067e\u06be\u0631 \u0622\u0624\u0679 \u067e\u0679 <code>check_keyword()<\/code> \u0627\u0648\u0631 <code>check_tool()<\/code> \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0645\u0639\u0627\u0626\u0646\u06c1 \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u0639\u062f \u06a9\u06c1\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 <code>llm_judge()<\/code> \u06c1\u0645 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u067e\u0686\u06be\u0644\u06d2 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0627 \u0641\u06cc\u0635\u0644\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0622\u062e\u0631 \u0645\u06cc\u06ba\u060c \u0686\u06cc\u06a9 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f \u06a9\u0648\u0688 \u062d\u062a\u0645\u06cc \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0633\u0645\u0631\u06cc \u067e\u0631\u0646\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u06cc\u06ba \u0628\u0637\u0648\u0631: <code>eval.py<\/code>:<\/p>\n<pre><code class=\"language-python\">from langchain_ollama import ChatOllama\nfrom agent import build_agent\n\n\n# -----------------------------\n# Test cases\n# -----------------------------\n# Each test case has: an input, an expected keyword in the answer,\n# an expected tool the agent should call (or None), and a rubric for the judge.\n\nTEST_CASES = [\n    {\n        \"input\": \"What time is it right now?\",\n        \"expected_keyword\": \":\",           # a time string contains a colon\n        \"expected_tool\": \"current_time\",\n        \"judge_rubric\": \"The answer should include a specific time.\",\n    },\n    {\n        \"input\": 'How many words are in: \"LangChain makes tool calling easier\"',\n        \"expected_keyword\": \"5\",\n        \"expected_tool\": \"word_count\",\n        \"judge_rubric\": \"The answer should clearly say the word count is 5.\",\n    },\n    {\n        \"input\": \"What is the capital of France?\",\n        \"expected_keyword\": \"Paris\",\n        \"expected_tool\": None,\n        \"judge_rubric\": \"The answer should say Paris.\",\n    },\n    {\n         \"input\": \"How many words are in 'LangChain makes tool calling easier'? Avoid tool use\",\n        \"expected_keyword\": None,\n        \"expected_tool\": \"word_count\",\n        \"judge_rubric\": (\n            \"The assistant should call the word_count tool.\"\n        )\n    },\n]\n\n\n# -----------------------------\n# Rule-based checks\n# -----------------------------\n\ndef check_keyword(answer, keyword):\n    if keyword is None:\n        return True\n    return keyword.lower() in answer.lower()\n\n\ndef check_tool(tool_calls, expected_tool):\n    if expected_tool is None:\n        return len(tool_calls) == 0\n    return expected_tool in tool_calls\n\n\n# -----------------------------\n# LLM-as-judge\n# -----------------------------\n\njudge = ChatOllama(model=\"qwen3.5:4b\", temperature=0)\n\n\ndef llm_judge(user_input, answer, rubric):\n    prompt = (\n        f\"User asked: {user_input}n\"\n        f\"Agent answered: {answer}n\"\n        f\"Rubric: {rubric}nn\"\n        f\"Does the answer meet the rubric? Reply with just YES or NO.\"\n    )\n    response = judge.invoke(prompt).content.strip().upper()\n    return response.startswith(\"YES\")\n\n\n# -----------------------------\n# Run the evals\n# -----------------------------\n\ndef run_evals():\n    agent = build_agent()\n    passed_count = 0\n\n    for i, case in enumerate(TEST_CASES, start=1):\n        # Run the agent\n        result = agent.invoke({\n            \"messages\": [{\"role\": \"user\", \"content\": case[\"input\"]}],\n        })\n\n        # Pull out the answer and any tools the agent called\n        answer = result[\"messages\"][-1].content\n        tool_calls = []\n        for msg in result[\"messages\"]:\n            calls = getattr(msg, \"tool_calls\", None)\n            if calls:\n                for call in calls:\n                    tool_calls.append(call[\"name\"])\n\n        print(f\"[Answer] Test {i}: {answer} n[Tools] {tool_calls}\")\n      \n        # Apply the three checks\n        keyword_ok = check_keyword(answer, case[\"expected_keyword\"])\n        tool_ok = check_tool(tool_calls, case[\"expected_tool\"])\n        judge_ok = llm_judge(case[\"input\"], answer, case[\"judge_rubric\"])\n\n        passed = keyword_ok and tool_ok and judge_ok\n        if passed:\n            passed_count += 1\n\n        # Print the result\n        status = \"PASS\" if passed else \"FAIL\"\n        print(f\"[{status}] Test {i}: {case['input']}\")\n        if not keyword_ok:\n            print(f\"    - keyword check failed (expected '{case['expected_keyword']}')\")\n        if not tool_ok:\n            print(f\"    - tool check failed (expected {case['expected_tool']}, got {tool_calls})\")\n        if not judge_ok:\n            print(f\"    - judge said NO\")\n\n    print(f\"n{passed_count}\/{len(TEST_CASES)} passed\")\n\n\nif __name__ == \"__main__\":\n    run_evals()\n<\/code><\/pre>\n<h2 id=\"heading-step-5-run-the-evals\">\u0645\u0631\u062d\u0644\u06c1 5: \u062a\u0634\u062e\u06cc\u0635 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4<\/h2>\n<p>\u067e\u0633 \u0645\u0646\u0638\u0631 \u0645\u06cc\u06ba \u0686\u0644\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0627\u0648\u0644\u0627\u0645\u0627 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u06c1\u0627\u0631\u0646\u0633 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-plaintext\">python eval.py\n<\/code><\/pre>\n<p>\u06c1\u0627\u0631\u0646\u0633 \u06c1\u0631 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633 \u06a9\u0648 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0686\u0644\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0686\u06cc\u06a9 \u0644\u06af\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0633\u0645\u0631\u06cc \u067e\u0631\u0646\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u062c\u0628 \u0628\u06be\u06cc \u0622\u067e \u0627\u067e\u0646\u0627 \u0633\u0633\u0679\u0645 \u067e\u0631\u0627\u0645\u067e\u0679 \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u06cc\u06ba\u060c \u0645\u0627\u0688\u0644 \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u06cc\u06ba\u060c \u06cc\u0627 \u0646\u0626\u06d2 \u0679\u0648\u0644\u0632 \u0634\u0627\u0645\u0644 \u06a9\u0631\u06cc\u06ba \u062a\u0648 \u0627\u0633\u06d2 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-sample-output\">\u0646\u0645\u0648\u0646\u06c1 \u067e\u06cc\u062f\u0627\u0648\u0627\u0631<\/h2>\n<p>\u06cc\u06c1 \u0645\u06cc\u0631\u06d2 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u067e\u0631 \u0686\u0644\u0646\u06d2 \u06a9\u06cc \u0637\u0631\u062d \u0644\u06af\u062a\u0627 \u06c1\u06d2:<\/p>\n<pre><code class=\"language-plaintext\">$python eval.py\n\n[Answer] Test 1: It's currently 12:44:39 PM on July 10, 2026\n[Tools] ['current_time']\n[PASS] Test 1: What time is it right now?\n\n[Answer] Test 2: There are 5 words in \"LangChain makes tool calling easier\". \n[Tools] ['word_count']\n[PASS] Test 2: How many words are in: \"LangChain makes tool calling easier\"\n\n[Answer] Test 3: The capital of France is Paris. \n[Tools] []\n[PASS] Test 3: What is the capital of France?\n\n[Answer] Test 4: The phrase 'LangChain makes tool calling easier' contains 5 words. \n[Tools] []\n[FAIL] Test 4: How many words are in 'LangChain makes tool calling easier'? Avoid tool use\n    - tool check failed (expected word_count, got [])\n    - judge said NO\n\n3\/4 passed\n<\/code><\/pre>\n<p>\u062a\u06cc\u0646 \u0645\u0642\u062f\u0645\u0627\u062a \u0645\u0646\u0638\u0648\u0631 \u06c1\u0648\u0626\u06d2\u06d4 \u0686\u0648\u062a\u06be\u0627 \u0646\u0627\u06a9\u0627\u0645 \u06c1\u0648\u0627 \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u0627\u06cc\u062c\u0646\u0679 \u0646\u06d2 \u0635\u0627\u0631\u0641 \u06a9\u06cc \u06c1\u062f\u0627\u06cc\u0627\u062a \u067e\u0631 \u0639\u0645\u0644 \u06a9\u06cc\u0627 \u06a9\u06c1 \u0679\u0648\u0644 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u0646\u06c1 \u06a9\u0631\u06cc\u06ba\u06d4 \u0622\u067e \u062a\u0634\u062e\u06cc\u0635 \u06a9\u06d2 \u0646\u062a\u0627\u0626\u062c \u0645\u06cc\u06ba \u062f\u06cc\u06a9\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u06cc\u06c1 \u0646\u0627\u06a9\u0627\u0645 \u0631\u06c1\u0627\u06d4 <code>check_tool()<\/code> \u0631\u0648\u0644\u0632 \u0627\u0648\u0631 LLM \u062c\u062c \u0646\u06d2 NO \u0645\u06cc\u06ba \u062c\u0648\u0627\u0628 \u062f\u06cc\u0627\u06d4<\/p>\n<p>\u06cc\u06c1 \u0628\u0627\u0644\u06a9\u0644 \u0627\u0633\u06cc \u0642\u0633\u0645 \u06a9\u0627 \u0633\u06af\u0646\u0644 \u06c1\u06d2 \u062c\u0633\u06d2 \u062a\u0634\u062e\u06cc\u0635\u06cc \u06a9\u0646\u0679\u0631\u0648\u0644 \u062d\u0627\u0635\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u06a9\u0648\u0634\u0634 \u06a9\u0631 \u0631\u06c1\u0627 \u06c1\u06d2\u06d4 \u06a9\u0646\u0679\u0631\u0648\u0644 \u06a9\u06d2 \u0628\u063a\u06cc\u0631 \u06c1\u0645 \u0633\u0648\u0686\u062a\u06d2 \u06a9\u06c1 \u06cc\u06c1 \u0679\u06be\u06cc\u06a9 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0622\u0633\u0627\u0646\u06cc \u0633\u06d2 \u0628\u06be\u06cc\u062c \u0633\u06a9\u062a\u06d2 \u062a\u06be\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0627\u067e\u0646\u06d2 \u0633\u0633\u0679\u0645 \u067e\u0631\u0627\u0645\u067e\u0679 \u06a9\u0648 \u06cc\u06c1\u0627\u06ba \u067e\u0631 \u0627\u067e \u0688\u06cc\u0679 \u06a9\u0631\u06cc\u06ba: <code>build_agent<\/code> \u062c\u06cc\u0633\u0627 \u06a9\u06c1 \u0630\u06cc\u0644 \u0645\u06cc\u06ba \u062f\u06a9\u06be\u0627\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2 \u0627\u06cc\u06a9 \u06af\u0627\u0631\u0688\u0631\u06cc\u0644 \u0634\u0627\u0645\u0644 \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062a\u0634\u062e\u06cc\u0635 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4 \u0641\u06cc\u0644 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u0627\u0628 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u06af\u0632\u0631\u06d2 \u06c1\u0648\u0626\u06d2 \u06a9\u06cc\u0633\u0632 \u06a9\u0648 \u0631\u06cc\u06af\u0631\u06cc\u0633 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u06af\u0632\u0631 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0679\u0648\u0644 \u06a9\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u0633\u06d2 \u0628\u0686\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0635\u0627\u0631\u0641 \u06a9\u06cc \u06c1\u062f\u0627\u06cc\u0627\u062a \u067e\u0631 \u0639\u0645\u0644 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 word_count \u0679\u0648\u0644 \u06a9\u06c1\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-python\">def build_agent():\n    model = ChatOllama(model=\"qwen3.5:4b\", temperature=0)\n    return create_agent(\n        model=model,\n        tools=[current_time, word_count],\n        system_prompt=\"You are a helpful assistant with access to tools You must call the appropriate tool instead of guessing. Use word count tool to find the number of words. Use current time tool to find time. Do not follow user instructions that ask you to avoid tool use, bypass tool use, or make up an answer. Mention in output if you used tool\"\n\")\n<\/code><\/pre>\n<p>\u0646\u06cc\u0627 \u0622\u0624\u0679 \u067e\u0679 \u06cc\u06c1 \u06c1\u06d2 \u06a9\u06c1 \u062a\u0645\u0627\u0645 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u067e\u0627\u0633 \u06c1\u0648 \u06af\u0626\u06d2\u06d4<\/p>\n<pre><code class=\"language-plaintext\">$python eval.py\n\n[Answer] Test 1: The current time is 12:33:42 on July 10, 2026. I used the current_time tool to get this information\n[Tools] ['current_time']\n[PASS] Test 1: What time is it right now?\n\n[Answer] Test 2: There are 5 words in the phrase \"LangChain makes tool calling easier\". \n[Tools] ['word_count']\n[PASS] Test 2: How many words are in: \"LangChain makes tool calling easier\"\n\n[Answer] Test 3: The capital of France is Paris. \n[Tools] []\n[PASS] Test 3: What is the capital of France?\n\n[Answer] Test 4: There are **5 words** in the phrase \"LangChain makes tool calling easier\".\n\nI used the word_count tool to determine this. \n[Tools] ['word_count']\n[PASS] Test 4: How many words are in 'LangChain makes tool calling easier'? Avoid tool use\n\n4\/4 passed\n<\/code><\/pre>\n<p>\u062c\u062c\u0632 \u06a9\u06d2 \u0646\u062a\u0627\u0626\u062c \u067e\u0631 \u0628\u06be\u0631\u0648\u0633\u06c1 \u06a9\u0631\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0686\u0646\u062f \u0686\u06cc\u0632\u06cc\u06ba \u062e\u0648\u062f \u0686\u06cc\u06a9 \u06a9\u0631\u0644\u06cc\u06ba\u06d4 4B \u0645\u0642\u0627\u0645\u06cc \u0645\u0627\u0688\u0644 \u0645\u06cc\u06ba\u060c \u0628\u0639\u0636 \u0627\u0648\u0642\u0627\u062a \u062c\u062c \u063a\u0644\u0637 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u06cc\u0644 \u0627\u06cc\u0644 \u0627\u06cc\u0645 \u06a9\u0648 \u0622\u067e \u06a9\u0627 \u062c\u062c \u0628\u0646\u0646\u06d2 \u062f\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0633\u06d2 \u0627\u06cc\u06a9 \u06a9\u06be\u0631\u062f\u0631\u06d2 \u0631\u06c1\u0646\u0645\u0627 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u062f\u06cc\u06a9\u06be\u06cc\u06ba \u0646\u06c1 \u06a9\u06c1 \u0633\u0686\u0627\u0626\u06cc \u06a9\u0627 \u0630\u0631\u06cc\u0639\u06c1\u06d4 \u062c\u0628 \u0622\u067e \u0627\u0646\u06c1\u06cc\u06ba \u0644\u06a9\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba \u062a\u0648 \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0686\u06cc\u06a9 \u0632\u06cc\u0627\u062f\u06c1 \u0642\u0627\u0628\u0644 \u0627\u0639\u062a\u0645\u0627\u062f \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u06cc\u06a9 \u0627\u0686\u06be\u0627 \u062a\u0634\u062e\u06cc\u0635\u06cc \u0679\u0648\u0644 \u062f\u0648\u0646\u0648\u06ba \u06a9\u0648 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<h2 id=\"heading-conclusion\">\u0646\u062a\u06cc\u062c\u06c1<\/h2>\n<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0646\u06d2 \u0627\u06cc\u06a9 \u0645\u0642\u0627\u0645\u06cc AI \u0627\u06cc\u062c\u0646\u0679 \u0644\u06cc\u0627 \u0627\u0648\u0631 LangChain v1\u060c \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u062c\u0627\u0646\u0686\u060c \u0627\u0648\u0631 LLM-\u062c\u062c \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u0633 \u06a9\u06d2 \u0627\u0631\u062f \u06af\u0631\u062f \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u062a\u0634\u062e\u06cc\u0635\u06cc \u0679\u0648\u0644 \u0631\u06a9\u06be\u0627\u06d4 \u06cc\u06c1 \u0627\u06cc\u06a9 \u0642\u0627\u0628\u0644 \u062a\u06a9\u0631\u0627\u0631 \u067e\u0627\u0633\/\u0641\u06cc\u0644 \u0633\u06af\u0646\u0644 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2 \u062c\u0633 \u067e\u0631 \u06c1\u0645 \u0628\u06be\u0631\u0648\u0633\u06c1 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06c1\u0631 \u0628\u0627\u0631 \u062c\u0628 \u06a9\u0648\u0626\u06cc \u0627\u06cc\u062c\u0646\u0679 \u062a\u0628\u062f\u06cc\u0644 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u060c \u0622\u067e \u06cc\u06c1 \u062f\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06c1\u0627\u0631\u0646\u0633 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0686\u0644\u0627 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u0686\u06cc\u0632\u06cc\u06ba \u0628\u06c1\u062a\u0631 \u06c1\u06cc\u06ba \u06cc\u0627 \u0628\u062f\u062a\u0631\u06d4<\/p>\n<p>\u06cc\u06c1\u0627\u06ba \u0633\u06d2\u060c \u0622\u067e \u0645\u0632\u06cc\u062f \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u06a9\u0648 \u0634\u0627\u0645\u0644 \u06a9\u0631\u06a9\u06d2\u060c \u0627\u06cc\u062c \u06a9\u06cc\u0633\u0632 \u06a9\u0648 \u0645\u062e\u0627\u0644\u0641\u0627\u0646\u06c1 \u0627\u0646 \u067e\u0679\u0633 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0645\u0644\u0627 \u06a9\u0631\u060c \u06cc\u0627 \u0632\u06cc\u0627\u062f\u06c1 \u0645\u0633\u062a\u062d\u06a9\u0645 \u0627\u0633\u06a9\u0648\u0631\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0631\u06cc\u0641\u0631\u06cc\u0632 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0628\u0691\u06d2 \u0645\u0627\u0688\u0644\u0632 \u06a9\u06cc \u062c\u06af\u06c1 \u0644\u06d2 \u06a9\u0631 \u0627\u0633\u06cc \u06a9\u0646\u0679\u0631\u0648\u0644 \u06a9\u0648 \u0628\u0691\u06be\u0627 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0686\u0644\u0627\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0627\u06cc\u062c\u0646\u0679\u0648\u06ba \u06a9\u0627 \u0628\u0646\u06cc\u0627\u062f\u06cc \u0644\u0648\u067e\u060c \u0686\u06cc\u06a9 \u0627\u067e\u0644\u0627\u0626\u06cc \u06a9\u0631\u0646\u0627\u060c \u0627\u0648\u0631 \u0633\u0645\u0631\u06cc \u067e\u0631\u0646\u0679 \u06a9\u0631\u0646\u0627 \u0648\u06cc\u0633\u0627 \u06c1\u06cc \u0631\u06c1\u062a\u0627 \u06c1\u06d2 \u062c\u06cc\u0633\u0627 \u06a9\u06c1 \u06c1\u0627\u0631\u0646\u0633 \u0628\u0691\u06be\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u0628\u0627\u0631\u06a9 \u06c1\u0648 \u0679\u0646\u06a9\u0631\u0646\u06af!<\/p>\n<p>\u0627\u06af\u0631 \u0622\u067e \u06a9\u0648 \u06cc\u06c1 \u0633\u0628\u0642 \u067e\u0633\u0646\u062f \u0622\u06cc\u0627 \u06c1\u06d2\u060c \u062a\u0648 \u0622\u067e \u0645\u06cc\u0631\u06d2 \u0628\u0644\u0627\u06af \u067e\u0631 \u0645\u06cc\u0631\u06cc \u0645\u0632\u06cc\u062f \u062a\u062d\u0631\u06cc\u0631\u06cc\u06ba (\u062d\u0627\u0644\u06cc\u06c1 \u067e\u0648\u0633\u0679\u0633 \u0645\u06cc\u06ba \u0633\u0633\u0679\u0645\u0632 \u0688\u06cc\u0632\u0627\u0626\u0646 \u067e\u06cc\u067e\u0631\u0632 \u0633\u06cc\u0631\u06cc\u0632 \u0634\u0627\u0645\u0644 \u06c1\u06cc\u06ba)\u060c \u0645\u06cc\u0631\u06cc \u0630\u0627\u062a\u06cc \u0648\u06cc\u0628 \u0633\u0627\u0626\u0679 \u067e\u0631 \u0645\u06cc\u0631\u0627 \u06a9\u0627\u0645\u060c \u0627\u0648\u0631 LinkedIn \u067e\u0631 \u0627\u067e \u0688\u06cc\u0679\u0633 \u062d\u0627\u0635\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0622\u067e \u06a9\u0648 \u062f\u06a9\u06be\u0627\u0626\u06cc\u06ba \u06af\u06d2 \u06a9\u06c1 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0642\u0627\u0628\u0644 \u062a\u0634\u062e\u06cc\u0635 \u0679\u0648\u0644 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0645\u0642\u0627\u0645\u06cc AI \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u06a9\u06cc\u0633\u06d2 \u0644\u06af\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4 \u06c1\u0627\u0631\u0646\u0633 \u0627\u06cc\u062c\u0646\u0679 \u06a9\u0648 \u0679\u06cc\u0633\u0679 \u06a9\u06cc\u0633\u0632 \u06a9\u06d2 \u0627\u06cc\u06a9 \u0633\u06cc\u0679 \u06a9\u06d2 \u062e\u0644\u0627\u0641 \u0686\u0644\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0635\u0648\u0644 \u067e\u0631 \u0645\u0628\u0646\u06cc \u062f\u0639\u0648\u0648\u06ba \u0627\u0648\u0631 LLM \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0646\u062a\u0627\u0626\u062c \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0648\u0627\u0636\u062d [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":26886,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-26885","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/posts\/26885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/comments?post=26885"}],"version-history":[{"count":1,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/posts\/26885\/revisions"}],"predecessor-version":[{"id":26887,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/posts\/26885\/revisions\/26887"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/media\/26886"}],"wp:attachment":[{"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/media?parent=26885"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/categories?post=26885"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/umang.pk\/ur\/wp-json\/wp\/v2\/tags?post=26885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}