{"id":74256,"date":"2024-08-21T18:55:46","date_gmt":"2024-08-21T15:25:46","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/expose-api-using-fastapi-4dbi\/"},"modified":"2024-08-21T18:55:46","modified_gmt":"2024-08-21T15:25:46","slug":"expose-api-using-fastapi-4dbi","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/expose-api-using-fastapi-4dbi\/","title":{"rendered":"\u0627\u0641\u0634\u0627\u06cc API \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 FastAPI &#8211; \u0627\u0646\u062c\u0645\u0646 DEV"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang<br \/>\n            \u062f\u0631 \u0648\u0628\u0644\u0627\u06af \u0647\u0627\u06cc \u0642\u0628\u0644\u06cc \u0646\u062d\u0648\u0647 \u0646\u0635\u0628 neo4j\u060c \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u0622\u0646 \u0648 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u06a9\u0631\u062f\u0646 \u0622\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0632\u0628\u0627\u0646 \u0637\u0628\u06cc\u0639\u06cc \u0631\u0627 \u062f\u06cc\u062f\u0647 \u0627\u06cc\u0645. \u0627\u06cc\u0646 \u0622\u062e\u0631\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u062f\u0631 \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f\u060c \u0645\u0627 \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0627\u062f\u0647 fastAPI \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u062a\u0627 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0631\u0627 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 API \u062f\u0631 \u0645\u0639\u0631\u0636 \u0646\u0645\u0627\u06cc\u0634 \u0628\u06af\u0630\u0627\u0631\u06cc\u0645.<\/p>\n<p>\u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u06a9\u062f \u0631\u0627 \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f &#8211; https:\/\/github.com\/praveenr2998\/Creating-Lightweight-RAG-Systems-With-Graphs\/blob\/main\/fastapi_app\/app.py<\/p>\n<p>from fastapi import FastAPI<br \/>\nfrom pydantic import BaseModel<br \/>\nfrom query_engine import GraphQueryEngine<\/p>\n<p># Pydantic model<br \/>\nclass QueryRequest(BaseModel):<br \/>\n    query: str<\/p>\n<p>app = FastAPI()<\/p>\n<p>@app.post(&#8220;\/process-query\/&#8221;)<br \/>\nasync def process_query(request: QueryRequest):<br \/>\n    query_engine = GraphQueryEngine()<br \/>\n    cypher_queries = query_engine.get_response(request.query)<br \/>\n    cypher_queries = query_engine.populate_embedding_in_query(request.query, cypher_queries)<br \/>\n    fetched_data = query_engine.fetch_data(cypher_queries)<br \/>\n    response = query_engine.get_final_response(request.query, fetched_data)<br \/>\n    return {&#8220;response&#8221;: response}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0641\u0627\u06cc\u0644 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f<\/p>\n<p>uvicorn app:app &#8211;reload<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0646\u0642\u0637\u0647 \u067e\u0627\u06cc\u0627\u0646\u06cc \u0631\u0627 \u062f\u0631 \u0645\u0648\u0631\u062f \u0645\u0646 \u0628\u0628\u06cc\u0646\u06cc\u062f http:\/\/127.0.0.1:8000\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0627\u0633\u0646\u0627\u062f \u0628\u0647 \u0622\u0646 \u0628\u0631\u0627\u06cc \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0641\u062d\u0634 &#8211; http:\/\/127.0.0.1:8000\/docs<br \/>\n\u0631\u0648\u06cc \u0622\u0646 \u0631\u0627 \u0627\u0645\u062a\u062d\u0627\u0646 \u06a9\u0646\u06cc\u062f \u06af\u0632\u06cc\u0646\u0647 \u062f\u0631\u06cc\u0627\u0641\u062a \u067e\u0627\u0633\u062e \u0628\u0631\u0627\u06cc \u0633\u0648\u0627\u0644 \u062e\u0648\u062f\u060c \u06a9\u0644\u06cc\u062f \u0633\u0648\u0627\u0644 \u0648\u0631\u0648\u062f\u06cc json \u062e\u0648\u062f \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>  \u062f\u0633\u062a\u0648\u0631 CURL<\/p>\n<p>curl -X &#8216;POST&#8217; \\<br \/>\n  &#8216;http:\/\/127.0.0.1:8000\/process-query\/&#8217; \\<br \/>\n  -H &#8216;accept: application\/json&#8217; \\<br \/>\n  -H &#8216;Content-Type: application\/json&#8217; \\<br \/>\n  -d &#8216;{<br \/>\n  &#8220;query&#8221;: &#8220;do you have headphones within the price of 25000&#8221;<br \/>\n}&#8217;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p> \u0627\u0645\u06cc\u062f\u0648\u0627\u0631\u0645 \u0627\u06cc\u0646 \u06a9\u0645\u06a9 \u06a9\u0646\u062f&#8230;!!!<\/p>\n<p>\u0644\u06cc\u0646\u06a9\u062f\u06cc\u0646 &#8211; https:\/\/www.linkedin.com\/in\/praveenr2998\/<\/p>\n<div data-article-id=\"1968055\" id=\"article-body\">\n<p>\u062f\u0631 \u0648\u0628\u0644\u0627\u06af \u0647\u0627\u06cc \u0642\u0628\u0644\u06cc \u0646\u062d\u0648\u0647 \u0646\u0635\u0628 neo4j\u060c \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u0622\u0646 \u0648 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u06a9\u0631\u062f\u0646 \u0622\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0632\u0628\u0627\u0646 \u0637\u0628\u06cc\u0639\u06cc \u0631\u0627 \u062f\u06cc\u062f\u0647 \u0627\u06cc\u0645. \u0627\u06cc\u0646 \u0622\u062e\u0631\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u062f\u0631 \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f\u060c \u0645\u0627 \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0627\u062f\u0647 fastAPI \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u062a\u0627 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0631\u0627 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 API \u062f\u0631 \u0645\u0639\u0631\u0636 \u0646\u0645\u0627\u06cc\u0634 \u0628\u06af\u0630\u0627\u0631\u06cc\u0645.<\/p>\n<p>\u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u06a9\u062f \u0631\u0627 \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f &#8211; https:\/\/github.com\/praveenr2998\/Creating-Lightweight-RAG-Systems-With-Graphs\/blob\/main\/fastapi_app\/app.py<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"kn\">from<\/span> <span class=\"n\">fastapi<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">FastAPI<\/span>\n<span class=\"kn\">from<\/span> <span class=\"n\">pydantic<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">BaseModel<\/span>\n<span class=\"kn\">from<\/span> <span class=\"n\">query_engine<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">GraphQueryEngine<\/span>\n\n\n<span class=\"c1\"># Pydantic model\n<\/span><span class=\"k\">class<\/span> <span class=\"nc\">QueryRequest<\/span><span class=\"p\">(<\/span><span class=\"n\">BaseModel<\/span><span class=\"p\">):<\/span>\n    <span class=\"n\">query<\/span><span class=\"p\">:<\/span> <span class=\"nb\">str<\/span>\n\n\n<span class=\"n\">app<\/span> <span class=\"o\">=<\/span> <span class=\"nc\">FastAPI<\/span><span class=\"p\">()<\/span>\n\n\n<span class=\"nd\">@app.post<\/span><span class=\"p\">(<\/span><span class=\"sh\">\"<\/span><span class=\"s\">\/process-query\/<\/span><span class=\"sh\">\"<\/span><span class=\"p\">)<\/span>\n<span class=\"k\">async<\/span> <span class=\"k\">def<\/span> <span class=\"nf\">process_query<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">:<\/span> <span class=\"n\">QueryRequest<\/span><span class=\"p\">):<\/span>\n    <span class=\"n\">query_engine<\/span> <span class=\"o\">=<\/span> <span class=\"nc\">GraphQueryEngine<\/span><span class=\"p\">()<\/span>\n    <span class=\"n\">cypher_queries<\/span> <span class=\"o\">=<\/span> <span class=\"n\">query_engine<\/span><span class=\"p\">.<\/span><span class=\"nf\">get_response<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">.<\/span><span class=\"n\">query<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">cypher_queries<\/span> <span class=\"o\">=<\/span> <span class=\"n\">query_engine<\/span><span class=\"p\">.<\/span><span class=\"nf\">populate_embedding_in_query<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">.<\/span><span class=\"n\">query<\/span><span class=\"p\">,<\/span> <span class=\"n\">cypher_queries<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">fetched_data<\/span> <span class=\"o\">=<\/span> <span class=\"n\">query_engine<\/span><span class=\"p\">.<\/span><span class=\"nf\">fetch_data<\/span><span class=\"p\">(<\/span><span class=\"n\">cypher_queries<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">response<\/span> <span class=\"o\">=<\/span> <span class=\"n\">query_engine<\/span><span class=\"p\">.<\/span><span class=\"nf\">get_final_response<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">.<\/span><span class=\"n\">query<\/span><span class=\"p\">,<\/span> <span class=\"n\">fetched_data<\/span><span class=\"p\">)<\/span>\n    <span class=\"k\">return<\/span> <span class=\"p\">{<\/span><span class=\"sh\">\"<\/span><span class=\"s\">response<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"n\">response<\/span><span class=\"p\">}<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>\u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0641\u0627\u06cc\u0644 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f\n<\/li>\n<\/ul>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>uvicorn app:app --reload\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><\/p>\n<ul>\n<li>\n<p>\u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0646\u0642\u0637\u0647 \u067e\u0627\u06cc\u0627\u0646\u06cc \u0631\u0627 \u062f\u0631 \u0645\u0648\u0631\u062f \u0645\u0646 \u0628\u0628\u06cc\u0646\u06cc\u062f <strong>http:\/\/127.0.0.1:8000\/<\/strong> \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 <strong>\u0627\u0633\u0646\u0627\u062f<\/strong> \u0628\u0647 \u0622\u0646 \u0628\u0631\u0627\u06cc \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0641\u062d\u0634 &#8211; <strong>http:\/\/127.0.0.1:8000\/docs<\/strong><\/p>\n<\/li>\n<li>\n<p>\u0631\u0648\u06cc <strong>\u0622\u0646 \u0631\u0627 \u0627\u0645\u062a\u062d\u0627\u0646 \u06a9\u0646\u06cc\u062f<\/strong> \u06af\u0632\u06cc\u0646\u0647 \u062f\u0631\u06cc\u0627\u0641\u062a \u067e\u0627\u0633\u062e \u0628\u0631\u0627\u06cc \u0633\u0648\u0627\u0644 \u062e\u0648\u062f\u060c \u06a9\u0644\u06cc\u062f \u0633\u0648\u0627\u0644 \u0648\u0631\u0648\u062f\u06cc json \u062e\u0648\u062f \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ygb9vvsg90vg828ovd8.png\" alt=\"\u0641\u062d\u0634 \u062f\u0627\u062f\u0646\" loading=\"lazy\" width=\"800\" height=\"291\" title=\"\"><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1z8ixwoou5wvnytyl3c.png\" alt=\"\u0641\u062d\u0634 \u062f\u0627\u062f\u0646 1\" loading=\"lazy\" width=\"800\" height=\"439\" title=\"\"><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl3e61utoywsur8k1xxft.png\" alt=\"\u0641\u062d\u0634 \u062f\u0627\u062f\u0646 2\" loading=\"lazy\" width=\"800\" height=\"338\" title=\"\"><\/p>\n<h2>\n<p>  \u062f\u0633\u062a\u0648\u0631 CURL<br \/>\n<\/h2>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>curl -X 'POST' \\\n  'http:\/\/127.0.0.1:8000\/process-query\/' \\\n  -H 'accept: application\/json' \\\n  -H 'Content-Type: application\/json' \\\n  -d '{\n  \"query\": \"do you have headphones within the price of 25000\"\n}'\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u0645\u06cc\u062f\u0648\u0627\u0631\u0645 \u0627\u06cc\u0646 \u06a9\u0645\u06a9 \u06a9\u0646\u062f&#8230;!!!<\/p>\n<p>\u0644\u06cc\u0646\u06a9\u062f\u06cc\u0646 &#8211; https:\/\/www.linkedin.com\/in\/praveenr2998\/<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u062f\u0631 \u0648\u0628\u0644\u0627\u06af \u0647\u0627\u06cc \u0642\u0628\u0644\u06cc \u0646\u062d\u0648\u0647 \u0646\u0635\u0628 neo4j\u060c \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u0622\u0646 \u0648 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u06a9\u0631\u062f\u0646 \u0622\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0632\u0628\u0627\u0646 \u0637\u0628\u06cc\u0639\u06cc \u0631\u0627 \u062f\u06cc\u062f\u0647 \u0627\u06cc\u0645. \u0627\u06cc\u0646 \u0622\u062e\u0631\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u062f\u0631 \u0627\u06cc\u0646 \u0645\u062c\u0645\u0648\u0639\u0647 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f\u060c \u0645\u0627 \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0627\u062f\u0647 fastAPI \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u0645 \u062a\u0627 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0631\u0627 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":74257,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-74256","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/74256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=74256"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/74256\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/74257"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=74256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=74256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=74256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}