{"id":106246,"date":"2026-09-16T23:32:30","date_gmt":"2026-09-16T15:32:30","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/106246.html"},"modified":"2026-09-16T23:32:30","modified_gmt":"2026-09-16T15:32:30","slug":"milvus-%e5%90%91%e9%87%8f%e6%95%b0%e6%8d%ae%e5%ba%93%e5%ae%9e%e6%88%98%e6%8c%87%e5%8d%97%ef%bc%9a%e4%bb%8e-docker-%e9%83%a8%e7%bd%b2%e5%88%b0-ai-%e6%97%a5%e8%ae%b0%e8%af%ad%e4%b9%89%e6%90%9c%e7%b4%a2","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/106246.html","title":{"rendered":"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22"},"content":{"rendered":"<p>&#x1f4d6; \u672c\u6587\u5c06\u5e26\u4f60\u4ece\u96f6\u5f00\u59cb&#xff0c;\u4f7f\u7528 Docker Compose \u90e8\u7f72 Milvus \u5411\u91cf\u6570\u636e\u5e93&#xff0c;\u5e76\u7ed3\u5408 OpenAI Embeddings \u5b9e\u73b0\u4e00\u4e2a&#034;AI \u65e5\u8bb0&#034;\u8bed\u4e49\u641c\u7d22 Demo\u3002<\/p>\n<hr \/>\n<h3>\u4e00\u3001\u2753 \u4e3a\u4ec0\u4e48\u9700\u8981\u5411\u91cf\u6570\u636e\u5e93&#xff1f;<\/h3>\n<p>\u4f20\u7edf\u6570\u636e\u5e93&#xff08;MySQL\u3001MongoDB&#xff09;\u64c5\u957f\u7cbe\u786e\u5339\u914d\u67e5\u8be2&#xff0c;\u6bd4\u5982&#034;\u67e5\u627e\u65e5\u671f\u4e3a 2026-01-10 \u7684\u65e5\u8bb0&#034;\u3002\u4f46\u5f53\u6211\u4eec\u60f3\u67e5\u8be2\u8bed\u4e49\u76f8\u8fd1\u7684\u5185\u5bb9\u65f6&#xff0c;\u6bd4\u5982&#xff1a;<\/p>\n<p>\u201c\u6211\u60f3\u627e\u5173\u4e8e\u6237\u5916\u6d3b\u52a8\u7684\u65e5\u8bb0\u201d<\/p>\n<p>\u4f20\u7edf\u6570\u636e\u5e93\u5c31\u65e0\u80fd\u4e3a\u529b\u4e86\u2014\u2014\u5b83\u65e0\u6cd5\u7406\u89e3&#034;\u722c\u5c71&#034;\u201c\u6563\u6b65\u201d&#034;\u516c\u56ed&#034;\u90fd\u5c5e\u4e8e&#034;\u6237\u5916\u6d3b\u52a8&#034;\u7684\u8303\u7574\u3002<\/p>\n<p>\u5411\u91cf\u6570\u636e\u5e93\u6b63\u662f\u4e3a\u89e3\u51b3\u8fd9\u7c7b\u95ee\u9898\u800c\u751f\u3002\u5b83\u7684\u6838\u5fc3\u539f\u7406\u662f&#xff1a;<\/p>\n<li>&#x1f521; \u5c06\u6587\u672c\u901a\u8fc7 Embedding \u6a21\u578b\u8f6c\u5316\u4e3a\u9ad8\u7ef4\u5411\u91cf&#xff08;\u4e00\u7ec4\u6d6e\u70b9\u6570&#xff09;<\/li>\n<li>&#x1f4be; \u5b58\u50a8\u8fd9\u4e9b\u5411\u91cf\u5230\u6570\u636e\u5e93<\/li>\n<li>&#x1f50d; \u67e5\u8be2\u65f6&#xff0c;\u540c\u6837\u5c06\u67e5\u8be2\u6587\u672c\u8f6c\u4e3a\u5411\u91cf&#xff0c;\u901a\u8fc7\u4f59\u5f26\u76f8\u4f3c\u5ea6\u7b49\u7b97\u6cd5\u627e\u5230\u6700\u76f8\u8fd1\u7684\u7ed3\u679c<\/li>\n<p>&#x1f4a1; \u8fd9\u5c31\u662f\u8bed\u4e49\u641c\u7d22&#xff08;Semantic Search&#xff09;\u7684\u672c\u8d28\u3002<\/p>\n<hr \/>\n<h3>\u4e8c\u3001&#x1f680; Milvus \u662f\u4ec0\u4e48&#xff1f;<\/h3>\n<p>Milvus \u662f\u7531 Zilliz \u516c\u53f8\u63a8\u51fa\u7684\u5f00\u6e90\u5411\u91cf\u6570\u636e\u5e93&#xff0c;\u4e13\u4e3a\u5927\u89c4\u6a21\u5411\u91cf\u76f8\u4f3c\u5ea6\u641c\u7d22\u800c\u8bbe\u8ba1\u3002\u5b83\u7684\u6838\u5fc3\u4f18\u52bf&#xff1a;<\/p>\n<table>\n<tr>\u7279\u6027\u8bf4\u660e<\/tr>\n<tbody>\n<tr>\n<td>\u26a1 \u9ad8\u6027\u80fd<\/td>\n<td>\u652f\u6301\u5341\u4ebf\u7ea7\u5411\u91cf\u7684\u6beb\u79d2\u7ea7\u641c\u7d22<\/td>\n<\/tr>\n<tr>\n<td>&#x1f9e9; \u591a\u79cd\u7d22\u5f15<\/td>\n<td>IVF_FLAT\u3001HNSW\u3001ANNOY \u7b49\u591a\u79cd\u7d22\u5f15\u7b97\u6cd5<\/td>\n<\/tr>\n<tr>\n<td>\u2601\ufe0f \u4e91\u539f\u751f<\/td>\n<td>\u539f\u751f\u652f\u6301 Kubernetes&#xff0c;\u5929\u7136\u9002\u5408\u5bb9\u5668\u5316\u90e8\u7f72<\/td>\n<\/tr>\n<tr>\n<td>&#x1f310; \u751f\u6001\u4e30\u5bcc<\/td>\n<td>\u63d0\u4f9b Python\u3001Node.js\u3001Java \u7b49\u591a\u8bed\u8a00 SDK<\/td>\n<\/tr>\n<tr>\n<td>&#x1f500; \u6df7\u5408\u67e5\u8be2<\/td>\n<td>\u652f\u6301\u5411\u91cf\u641c\u7d22 &#043; \u6807\u91cf\u8fc7\u6ee4\u7684\u6df7\u5408\u67e5\u8be2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h3>\u4e09\u3001&#x1f433; Docker Compose \u4e00\u952e\u90e8\u7f72 Milvus<\/h3>\n<p>Milvus Standalone \u6a21\u5f0f\u7531\u4e09\u4e2a\u6838\u5fc3\u670d\u52a1\u7ec4\u6210&#xff0c;\u901a\u8fc7 docker-compose.yml \u7f16\u6392&#xff1a;<\/p>\n<p>\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n\u2502              Docker Compose \u7f16\u6392                  \u2502<br \/>\n\u2502                                                   \u2502<br \/>\n\u2502  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510   \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510   \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510  \u2502<br \/>\n\u2502  \u2502   etcd   \u2502   \u2502  MinIO   \u2502   \u2502   Milvus     \u2502  \u2502<br \/>\n\u2502  \u2502 \u5143\u6570\u636e\u5b58\u50a8\u2502   \u2502 \u5bf9\u8c61\u5b58\u50a8  \u2502   \u2502  Standalone  \u2502  \u2502<br \/>\n\u2502  \u2502          \u2502   \u2502          \u2502   \u2502  (\u6838\u5fc3\u5f15\u64ce)   \u2502  \u2502<br \/>\n\u2502  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518   \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518   \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518  \u2502<br \/>\n\u2502       \u2191               \u2191               \u2191           \u2502<br \/>\n\u2502    :2379           :9000           :19530         \u2502<br \/>\n\u2502                   :9001           :9091           \u2502<br \/>\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>&#x1f4cb; \u4e09\u4e2a\u670d\u52a1\u5404\u81ea\u7684\u804c\u8d23&#xff1a;<\/h4>\n<p>1\ufe0f\u20e3 etcd \u2014 \u5143\u6570\u636e\u5b58\u50a8<\/p>\n<ul>\n<li>&#x1f5c2;\ufe0f \u5b58\u50a8 Milvus \u7684\u5143\u6570\u636e\u4fe1\u606f&#xff08;\u96c6\u5408\u5b9a\u4e49\u3001\u7d22\u5f15\u914d\u7f6e\u7b49&#xff09;<\/li>\n<li>&#x1f3f7;\ufe0f \u57fa\u4e8e CoreOS etcd v3.5.25<\/li>\n<li>&#x1f6e1;\ufe0f \u914d\u7f6e\u4e86\u81ea\u52a8\u538b\u7f29\u548c\u5feb\u7167\u7b56\u7565&#xff0c;\u4fdd\u8bc1\u6570\u636e\u4e00\u81f4\u6027<\/li>\n<\/ul>\n<p>2\ufe0f\u20e3 MinIO \u2014 \u5bf9\u8c61\u5b58\u50a8<\/p>\n<ul>\n<li>&#x1f4e6; \u5b58\u50a8\u5b9e\u9645\u7684\u5411\u91cf\u6570\u636e\u6587\u4ef6\u548c\u7d22\u5f15\u6587\u4ef6<\/li>\n<li>&#x1f517; \u517c\u5bb9 S3 \u534f\u8bae\u7684\u5bf9\u8c61\u5b58\u50a8<\/li>\n<li>&#x1f310; \u66b4\u9732 9000&#xff08;API&#xff09;\u548c 9001&#xff08;\u7ba1\u7406\u63a7\u5236\u53f0&#xff09;\u7aef\u53e3<\/li>\n<li>&#x1f511; \u9ed8\u8ba4\u51ed\u8bc1&#xff1a;minioadmin \/ minioadmin<\/li>\n<\/ul>\n<p>3\ufe0f\u20e3 Milvus Standalone \u2014 \u6838\u5fc3\u5f15\u64ce<\/p>\n<ul>\n<li>&#x1f9e0; \u5411\u91cf\u6570\u636e\u5e93\u7684\u4e3b\u670d\u52a1&#xff0c;\u5904\u7406\u6240\u6709\u67e5\u8be2\u548c\u5199\u5165\u8bf7\u6c42<\/li>\n<li>&#x1f6aa; \u66b4\u9732 19530&#xff08;gRPC&#xff0c;SDK \u8fde\u63a5\u7aef\u53e3&#xff09;\u548c 9091&#xff08;\u5065\u5eb7\u68c0\u67e5&#xff09;\u7aef\u53e3<\/li>\n<li>\u23f3 \u4f9d\u8d56 etcd \u548c MinIO&#xff0c;\u542f\u52a8\u65f6\u4f1a\u7b49\u5f85\u5b83\u4eec\u5065\u5eb7\u5c31\u7eea<\/li>\n<\/ul>\n<h4>\u25b6\ufe0f \u542f\u52a8\u547d\u4ee4<\/h4>\n<p><span class=\"token comment\"># &#x1f680; \u5728\u9879\u76ee\u76ee\u5f55\u4e0b\u6267\u884c<\/span><br \/>\n<span class=\"token function\">docker-compose<\/span> <span class=\"token parameter variable\">-f<\/span> milvus-standalone-docker-compose.yml up <span class=\"token parameter variable\">-d<\/span><\/p>\n<p><span class=\"token comment\"># &#x1f4ca; \u67e5\u770b\u670d\u52a1\u72b6\u6001<\/span><br \/>\n<span class=\"token function\">docker-compose<\/span> <span class=\"token parameter variable\">-f<\/span> milvus-standalone-docker-compose.yml <span class=\"token function\">ps<\/span><\/p>\n<p><span class=\"token comment\"># &#x1f6d1; \u505c\u6b62\u670d\u52a1<\/span><br \/>\n<span class=\"token function\">docker-compose<\/span> <span class=\"token parameter variable\">-f<\/span> milvus-standalone-docker-compose.yml down<\/p>\n<p>&#x1f4be; \u6570\u636e\u6301\u4e45\u5316&#xff1a;\u6240\u6709\u6570\u636e\u901a\u8fc7 .\/volumes\/ \u76ee\u5f55\u6302\u8f7d\u5230\u5bbf\u4e3b\u673a&#xff0c;\u91cd\u542f\u4e0d\u4e22\u5931\u3002<\/p>\n<hr \/>\n<h3>\u56db\u3001&#x1f916; Node.js SDK \u96c6\u6210\u5b9e\u6218&#xff1a;AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22<\/h3>\n<p>\u90e8\u7f72\u597d Milvus \u540e&#xff0c;\u6211\u4eec\u7528 Node.js \u6784\u5efa\u4e00\u4e2a&#034;AI \u65e5\u8bb0&#034;Demo\u2014\u2014\u5c06\u65e5\u8bb0\u5185\u5bb9\u5411\u91cf\u5316\u540e\u5b58\u5165 Milvus&#xff0c;\u5b9e\u73b0\u8bed\u4e49\u641c\u7d22\u3002<\/p>\n<h4>&#x1f4da; 4.1 \u6280\u672f\u6808<\/h4>\n<table>\n<tr>&#x1f9f0; \u7ec4\u4ef6&#x1f4dd; \u7528\u9014<\/tr>\n<tbody>\n<tr>\n<td>&#064;zilliz\/milvus2-sdk-node<\/td>\n<td>Milvus \u5b98\u65b9 Node.js SDK<\/td>\n<\/tr>\n<tr>\n<td>&#064;langchain\/openai<\/td>\n<td>\u8c03\u7528 Embedding \u6a21\u578b\u751f\u6210\u5411\u91cf<\/td>\n<\/tr>\n<tr>\n<td>dotenv<\/td>\n<td>\u7ba1\u7406\u73af\u5883\u53d8\u91cf<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u2699\ufe0f 4.2 \u73af\u5883\u914d\u7f6e<\/h4>\n<p>\u5728 .env \u6587\u4ef6\u4e2d\u914d\u7f6e API \u5bc6\u94a5\u548c\u6a21\u578b&#xff1a;<\/p>\n<p>OPENAI_API_KEY&#061;your_api_key<br \/>\nOPENAI_BASE_URL&#061;https:\/\/dashscope.aliyuncs.com\/compatible-mode\/v1<br \/>\nEMBEDDINGS_MODEL_NAME&#061;text-embedding-v3<\/p>\n<p>&#x1f31f; \u672c\u793a\u4f8b\u4f7f\u7528\u963f\u91cc\u4e91 DashScope \u7684 text-embedding-v3 \u6a21\u578b&#xff0c;\u8f93\u51fa 1024 \u7ef4\u5411\u91cf\u3002\u4f60\u4e5f\u53ef\u4ee5\u66ff\u6362\u4e3a OpenAI \u7684 text-embedding-3-small \u7b49\u6a21\u578b\u3002<\/p>\n<h4>&#x1f504; 4.3 \u6838\u5fc3\u6d41\u7a0b<\/h4>\n<p>\u6574\u4e2a\u6d41\u7a0b\u5206\u4e3a 5 \u6b65&#xff1a;<\/p>\n<p>&#x1f517; \u8fde\u63a5 Milvus \u2192 &#x1f4c1; \u521b\u5efa\u96c6\u5408 \u2192 &#x1f3d7;\ufe0f \u521b\u5efa\u7d22\u5f15 \u2192 &#x1f4e5; \u52a0\u8f7d\u96c6\u5408 \u2192 \u270d\ufe0f \u63d2\u5165\u6570\u636e<\/p>\n<h5>&#x1f517; Step 1&#xff1a;\u8fde\u63a5 Milvus<\/h5>\n<p><span class=\"token keyword\">import<\/span> <span class=\"token punctuation\">{<\/span> MilvusClient <span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">from<\/span> <span class=\"token string\">&#039;&#064;zilliz\/milvus2-sdk-node&#039;<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">const<\/span> client <span class=\"token operator\">&#061;<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">MilvusClient<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token literal-property property\">address<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;localhost:19530&#039;<\/span>  <span class=\"token comment\">\/\/ Milvus gRPC \u7aef\u53e3<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<h5>&#x1f4c1; Step 2&#xff1a;\u5b9a\u4e49\u96c6\u5408 Schema<\/h5>\n<p><span class=\"token keyword\">import<\/span> <span class=\"token punctuation\">{<\/span> DataType <span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">from<\/span> <span class=\"token string\">&#039;&#064;zilliz\/milvus2-sdk-node&#039;<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">await<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">createCollection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token literal-property property\">collection_name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ai_diary&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">fields<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">[<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;id&#039;<\/span><span class=\"token punctuation\">,<\/span>      <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>VarChar<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">max_length<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">50<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">is_primary_key<\/span><span class=\"token operator\">:<\/span> <span class=\"token boolean\">true<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;vector&#039;<\/span><span class=\"token punctuation\">,<\/span>  <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>FloatVector<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">dim<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">1024<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span>  <span class=\"token comment\">\/\/ 1024\u7ef4\u5411\u91cf<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;content&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>VarChar<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">max_length<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">5000<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;date&#039;<\/span><span class=\"token punctuation\">,<\/span>    <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>VarChar<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">max_length<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">50<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;mood&#039;<\/span><span class=\"token punctuation\">,<\/span>    <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>VarChar<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">max_length<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">50<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;tags&#039;<\/span><span class=\"token punctuation\">,<\/span>    <span class=\"token literal-property property\">data_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>Array<span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">element_type<\/span><span class=\"token operator\">:<\/span> DataType<span class=\"token punctuation\">.<\/span>VarChar<span class=\"token punctuation\">,<\/span><br \/>\n                       <span class=\"token literal-property property\">max_capacity<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">10<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">max_length<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">50<\/span> <span class=\"token punctuation\">}<\/span><br \/>\n  <span class=\"token punctuation\">]<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>\u26a0\ufe0f \u5173\u952e\u70b9&#xff1a;vector \u5b57\u6bb5\u7c7b\u578b\u4e3a FloatVector&#xff0c;\u7ef4\u5ea6 dim \u5fc5\u987b\u4e0e Embedding \u6a21\u578b\u8f93\u51fa\u7ef4\u5ea6\u4e00\u81f4&#xff08;\u8fd9\u91cc\u662f 1024&#xff09;\u3002<\/p>\n<h5>&#x1f3d7;\ufe0f Step 3&#xff1a;\u521b\u5efa\u5411\u91cf\u7d22\u5f15<\/h5>\n<p><span class=\"token keyword\">import<\/span> <span class=\"token punctuation\">{<\/span> IndexType<span class=\"token punctuation\">,<\/span> MetricType <span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">from<\/span> <span class=\"token string\">&#039;&#064;zilliz\/milvus2-sdk-node&#039;<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">await<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">createIndex<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token literal-property property\">collection_name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ai_diary&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">field_name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;vector&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">index_type<\/span><span class=\"token operator\">:<\/span> IndexType<span class=\"token punctuation\">.<\/span><span class=\"token constant\">IVF_FLAT<\/span><span class=\"token punctuation\">,<\/span>    <span class=\"token comment\">\/\/ \u7d22\u5f15\u7b97\u6cd5<\/span><br \/>\n  <span class=\"token literal-property property\">metric_type<\/span><span class=\"token operator\">:<\/span> MetricType<span class=\"token punctuation\">.<\/span><span class=\"token constant\">COSINE<\/span><span class=\"token punctuation\">,<\/span>    <span class=\"token comment\">\/\/ \u76f8\u4f3c\u5ea6\u5ea6\u91cf&#xff1a;\u4f59\u5f26\u76f8\u4f3c\u5ea6<\/span><br \/>\n  <span class=\"token literal-property property\">params<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">nlist<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">1024<\/span> <span class=\"token punctuation\">}<\/span>            <span class=\"token comment\">\/\/ \u805a\u7c7b\u4e2d\u5fc3\u6570<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>&#x1f4ca; \u7d22\u5f15\u7c7b\u578b\u9009\u62e9\u6307\u5357&#xff1a;<\/p>\n<table>\n<tr>\u7d22\u5f15\u7c7b\u578b\u9002\u7528\u573a\u666f\u7279\u70b9<\/tr>\n<tbody>\n<tr>\n<td>IVF_FLAT<\/td>\n<td>\u4e2d\u5c0f\u89c4\u6a21\u6570\u636e&#xff08;&lt; 100\u4e07&#xff09;<\/td>\n<td>\u2705 \u7cbe\u5ea6\u9ad8&#xff0c;\u901f\u5ea6\u9002\u4e2d<\/td>\n<\/tr>\n<tr>\n<td>HNSW<\/td>\n<td>\u4f4e\u5ef6\u8fdf\u8981\u6c42<\/td>\n<td>\u26a1 \u67e5\u8be2\u6781\u5feb&#xff0c;\u5185\u5b58\u5360\u7528\u5927<\/td>\n<\/tr>\n<tr>\n<td>IVF_SQ8<\/td>\n<td>\u5927\u89c4\u6a21\u6570\u636e<\/td>\n<td>&#x1f4b0; \u8282\u7701\u5185\u5b58&#xff0c;\u7cbe\u5ea6\u7565\u964d<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5>\u270d\ufe0f Step 4&#xff1a;\u751f\u6210 Embedding \u5e76\u63d2\u5165\u6570\u636e<\/h5>\n<p><span class=\"token keyword\">import<\/span> <span class=\"token punctuation\">{<\/span> OpenAIEmbeddings <span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">from<\/span> <span class=\"token string\">&#034;&#064;langchain\/openai&#034;<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">const<\/span> embeddings <span class=\"token operator\">&#061;<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">OpenAIEmbeddings<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token literal-property property\">apiKey<\/span><span class=\"token operator\">:<\/span> process<span class=\"token punctuation\">.<\/span>env<span class=\"token punctuation\">.<\/span><span class=\"token constant\">OPENAI_API_KEY<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">model<\/span><span class=\"token operator\">:<\/span> process<span class=\"token punctuation\">.<\/span>env<span class=\"token punctuation\">.<\/span><span class=\"token constant\">EMBEDDINGS_MODEL_NAME<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">configuration<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">baseURL<\/span><span class=\"token operator\">:<\/span> process<span class=\"token punctuation\">.<\/span>env<span class=\"token punctuation\">.<\/span><span class=\"token constant\">OPENAI_BASE_URL<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">dimensions<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">1024<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token comment\">\/\/ &#x1f521; \u5c06\u65e5\u8bb0\u5185\u5bb9\u8f6c\u4e3a\u5411\u91cf<\/span><br \/>\n<span class=\"token keyword\">async<\/span> <span class=\"token keyword\">function<\/span> <span class=\"token function\">getEmbedding<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">text<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token keyword\">return<\/span> <span class=\"token keyword\">await<\/span> embeddings<span class=\"token punctuation\">.<\/span><span class=\"token function\">embedQuery<\/span><span class=\"token punctuation\">(<\/span>text<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p><span class=\"token comment\">\/\/ &#x1f4e6; \u6279\u91cf\u751f\u6210\u5411\u91cf\u5e76\u63d2\u5165<\/span><br \/>\n<span class=\"token keyword\">const<\/span> diaryData <span class=\"token operator\">&#061;<\/span> <span class=\"token keyword\">await<\/span> Promise<span class=\"token punctuation\">.<\/span><span class=\"token function\">all<\/span><span class=\"token punctuation\">(<\/span><br \/>\n  diaryContents<span class=\"token punctuation\">.<\/span><span class=\"token function\">map<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">async<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">diary<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">&#061;&gt;<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token operator\">&#8230;<\/span>diary<span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token literal-property property\">vector<\/span><span class=\"token operator\">:<\/span> <span class=\"token keyword\">await<\/span> <span class=\"token function\">getEmbedding<\/span><span class=\"token punctuation\">(<\/span>diary<span class=\"token punctuation\">.<\/span>content<span class=\"token punctuation\">)<\/span><br \/>\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">await<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">insert<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token literal-property property\">collection_name<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ai_diary&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token literal-property property\">data<\/span><span class=\"token operator\">:<\/span> diaryData<br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<h4>&#x1f4d3; 4.4 \u65e5\u8bb0\u6570\u636e\u793a\u4f8b<\/h4>\n<p>Demo \u4e2d\u51c6\u5907\u4e86 5 \u6761\u6a21\u62df\u65e5\u8bb0&#xff1a;<\/p>\n<table>\n<tr>&#x1f194; ID&#x1f4c5; \u65e5\u671f&#x1f60a; \u5fc3\u60c5&#x1f3f7;\ufe0f \u6807\u7b7e&#x1f4dd; \u5185\u5bb9\u6458\u8981<\/tr>\n<tbody>\n<tr>\n<td>diary_001<\/td>\n<td>2026-01-10<\/td>\n<td>&#x1f604; happy<\/td>\n<td>\u751f\u6d3b\u3001\u6563\u6b65<\/td>\n<td>\u53bb\u516c\u56ed\u6563\u6b65&#xff0c;\u770b\u5230\u82b1\u5f00\u4e86<\/td>\n<\/tr>\n<tr>\n<td>diary_002<\/td>\n<td>2026-01-11<\/td>\n<td>&#x1f929; excited<\/td>\n<td>\u5de5\u4f5c\u3001\u6210\u5c31<\/td>\n<td>\u5b8c\u6210\u9879\u76ee\u91cc\u7a0b\u7891&#xff0c;\u6709\u6210\u5c31\u611f<\/td>\n<\/tr>\n<tr>\n<td>diary_003<\/td>\n<td>2026-01-12<\/td>\n<td>&#x1f60c; relaxed<\/td>\n<td>\u6237\u5916\u3001\u670b\u53cb<\/td>\n<td>\u548c\u670b\u53cb\u722c\u5c71&#xff0c;\u4eab\u53d7\u5927\u81ea\u7136<\/td>\n<\/tr>\n<tr>\n<td>diary_004<\/td>\n<td>2026-01-12<\/td>\n<td>&#x1f9d0; curious<\/td>\n<td>\u5b66\u4e60\u3001\u6280\u672f<\/td>\n<td>\u5b66\u4e60 Milvus \u5411\u91cf\u6570\u636e\u5e93<\/td>\n<\/tr>\n<tr>\n<td>diary_005<\/td>\n<td>2026-01-13<\/td>\n<td>&#x1f973; proud<\/td>\n<td>\u7f8e\u98df\u3001\u5bb6\u5ead<\/td>\n<td>\u505a\u4e86\u4e00\u987f\u4e30\u76db\u665a\u9910<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&#x1f50d; \u5f53\u4f60\u641c\u7d22&#034;\u6237\u5916\u8fd0\u52a8&#034;\u65f6&#xff0c;Milvus \u4f1a\u8fd4\u56de diary_003&#xff08;\u722c\u5c71&#xff09;\u548c diary_001&#xff08;\u516c\u56ed\u6563\u6b65&#xff09;&#xff0c;\u56e0\u4e3a\u5b83\u4eec\u7684\u8bed\u4e49\u4e0e&#034;\u6237\u5916\u8fd0\u52a8&#034;\u6700\u63a5\u8fd1\u2014\u2014\u5373\u4f7f\u6587\u672c\u4e2d\u6ca1\u6709\u51fa\u73b0&#034;\u6237\u5916\u8fd0\u52a8&#034;\u8fd9\u56db\u4e2a\u5b57\u3002<\/p>\n<hr \/>\n<h3>\u4e94\u3001&#x1f3c1; \u8fd0\u884c\u9879\u76ee<\/h3>\n<p><span class=\"token comment\"># 1. &#x1f433; \u542f\u52a8 Milvus<\/span><br \/>\n<span class=\"token function\">docker-compose<\/span> <span class=\"token parameter variable\">-f<\/span> milvus-standalone-docker-compose.yml up <span class=\"token parameter variable\">-d<\/span><\/p>\n<p><span class=\"token comment\"># 2. &#x1f4e6; \u5b89\u88c5\u4f9d\u8d56<\/span><br \/>\n<span class=\"token function\">pnpm<\/span> <span class=\"token function\">install<\/span><\/p>\n<p><span class=\"token comment\"># 3. &#x1f511; \u914d\u7f6e .env \u6587\u4ef6&#xff08;\u586b\u5165\u4f60\u7684 API Key&#xff09;<\/span><\/p>\n<p><span class=\"token comment\"># 4. \u25b6\ufe0f \u8fd0\u884c Demo<\/span><br \/>\n<span class=\"token function\">node<\/span> index.mjs<\/p>\n<p>\u9884\u671f\u8f93\u51fa&#xff1a;<\/p>\n<p>Connecting to Milvus&#8230;<br \/>\n\u2713 Connected<\/p>\n<p>Creating collection&#8230;<br \/>\nCollection created<\/p>\n<p>Creating index&#8230;<br \/>\nIndex created<\/p>\n<p>Loading collection&#8230;<br \/>\nCollection loaded<\/p>\n<p>Inserting diary entries&#8230;<br \/>\nGenerating embeddings&#8230;<br \/>\n\u2713 Inserted 5 records<\/p>\n<hr \/>\n<h3>\u516d\u3001&#x1f4cc; \u603b\u7ed3<\/h3>\n<p>\u672c\u6587\u5b8c\u6574\u6f14\u793a\u4e86\u5411\u91cf\u6570\u636e\u5e93\u7684\u5e94\u7528\u94fe\u8def&#xff1a;<\/p>\n<p>\u6587\u672c\u6570\u636e \u2192 Embedding \u6a21\u578b \u2192 \u9ad8\u7ef4\u5411\u91cf \u2192 Milvus \u5b58\u50a8 \u2192 \u8bed\u4e49\u641c\u7d22<\/p>\n<p>&#x1f3af; \u6838\u5fc3\u8981\u70b9\u56de\u987e&#xff1a;<\/p>\n<li>&#x1f433; Milvus \u4e09\u4ef6\u5957&#xff1a;etcd&#xff08;\u5143\u6570\u636e&#xff09;&#043; MinIO&#xff08;\u5bf9\u8c61\u5b58\u50a8&#xff09;&#043; Milvus&#xff08;\u5f15\u64ce&#xff09;&#xff0c;\u901a\u8fc7 Docker Compose \u4e00\u952e\u90e8\u7f72<\/li>\n<li>&#x1f522; \u5411\u91cf\u7ef4\u5ea6\u8981\u5339\u914d&#xff1a;Embedding \u6a21\u578b\u8f93\u51fa\u7ef4\u5ea6\u5fc5\u987b\u4e0e\u96c6\u5408 Schema \u4e2d\u7684 dim \u4e00\u81f4<\/li>\n<li>\u26a1 \u7d22\u5f15\u5f71\u54cd\u6027\u80fd&#xff1a;IVF_FLAT \u9002\u5408\u5165\u95e8&#xff0c;\u751f\u4ea7\u73af\u5883\u6839\u636e\u6570\u636e\u89c4\u6a21\u9009\u62e9 HNSW \u6216 IVF_SQ8<\/li>\n<li>&#x1f50d; \u8bed\u4e49\u641c\u7d22\u7684\u529b\u91cf&#xff1a;\u4e0d\u9700\u8981\u5173\u952e\u8bcd\u5b8c\u5168\u5339\u914d&#xff0c;\u5411\u91cf\u6570\u636e\u5e93\u80fd\u7406\u89e3\u8bed\u4e49\u76f8\u8fd1\u7684\u5185\u5bb9<\/li>\n<p>&#x1f680; \u8fd9\u5957\u65b9\u6848\u53ef\u4ee5\u5e7f\u6cdb\u5e94\u7528\u4e8e RAG&#xff08;\u68c0\u7d22\u589e\u5f3a\u751f\u6210&#xff09;\u3001\u667a\u80fd\u5ba2\u670d\u3001\u6587\u6863\u641c\u7d22\u3001\u63a8\u8350\u7cfb\u7edf \u7b49 AI \u5e94\u7528\u573a\u666f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#x1f4d6; \u672c\u6587\u5c06\u5e26\u4f60\u4ece\u96f6\u5f00\u59cb&#xff0c;\u4f7f\u7528 Docker Compose \u90e8\u7f72 Milvus \u5411\u91cf\u6570\u636e\u5e93&#xff0c;\u5e76\u7ed3\u5408 OpenAI Embeddings \u5b9e\u73b0\u4e00\u4e2a\\&#8221;AI \u65e5\u8bb0\\&#8221;\u8bed\u4e49\u641c\u7d22 Demo\u3002 \u4e00\u3001\u2753 \u4e3a\u4ec0\u4e48\u9700\u8981\u5411\u91cf\u6570\u636e\u5e93&#xff1f;<br \/>\n\u4f20\u7edf\u6570\u636e\u5e93&#xff08;MySQL\u3001MongoDB&#xff09;\u64c5\u957f\u7cbe\u786e\u5339\u914d\u67e5\u8be2&#xff0c;\u6bd4\u5982\\&#8221;\u67e5\u627e\u65e5\u671f\u4e3a 2026-01-10 \u7684\u65e5\u8bb0\\&#8221;\u3002\u4f46\u5f53\u6211\u4eec\u60f3\u67e5\u8be2\u8bed\u4e49\u76f8\u8fd1\u7684\u5185\u5bb9\u65f6&#xff0c;\u6bd4\u5982&amp;#xf<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[11653,187,100],"topic":[],"class_list":["post-106246","post","type-post","status-publish","format-standard","hentry","category-server","tag-11653","tag-javascript","tag-100"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/106246.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"&#x1f4d6; \u672c\u6587\u5c06\u5e26\u4f60\u4ece\u96f6\u5f00\u59cb&#xff0c;\u4f7f\u7528 Docker Compose \u90e8\u7f72 Milvus \u5411\u91cf\u6570\u636e\u5e93&#xff0c;\u5e76\u7ed3\u5408 OpenAI Embeddings \u5b9e\u73b0\u4e00\u4e2a&quot;AI \u65e5\u8bb0&quot;\u8bed\u4e49\u641c\u7d22 Demo\u3002 \u4e00\u3001\u2753 \u4e3a\u4ec0\u4e48\u9700\u8981\u5411\u91cf\u6570\u636e\u5e93&#xff1f; \u4f20\u7edf\u6570\u636e\u5e93&#xff08;MySQL\u3001MongoDB&#xff09;\u64c5\u957f\u7cbe\u786e\u5339\u914d\u67e5\u8be2&#xff0c;\u6bd4\u5982&quot;\u67e5\u627e\u65e5\u671f\u4e3a 2026-01-10 \u7684\u65e5\u8bb0&quot;\u3002\u4f46\u5f53\u6211\u4eec\u60f3\u67e5\u8be2\u8bed\u4e49\u76f8\u8fd1\u7684\u5185\u5bb9\u65f6&#xff0c;\u6bd4\u5982&amp;#xf\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/106246.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-16T15:32:30+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/106246.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/106246.html\",\"name\":\"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2026-09-16T15:32:30+00:00\",\"dateModified\":\"2026-09-16T15:32:30+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/106246.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/106246.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/106246.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/106246.html","og_locale":"zh_CN","og_type":"article","og_title":"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"&#x1f4d6; \u672c\u6587\u5c06\u5e26\u4f60\u4ece\u96f6\u5f00\u59cb&#xff0c;\u4f7f\u7528 Docker Compose \u90e8\u7f72 Milvus \u5411\u91cf\u6570\u636e\u5e93&#xff0c;\u5e76\u7ed3\u5408 OpenAI Embeddings \u5b9e\u73b0\u4e00\u4e2a\"AI \u65e5\u8bb0\"\u8bed\u4e49\u641c\u7d22 Demo\u3002 \u4e00\u3001\u2753 \u4e3a\u4ec0\u4e48\u9700\u8981\u5411\u91cf\u6570\u636e\u5e93&#xff1f; \u4f20\u7edf\u6570\u636e\u5e93&#xff08;MySQL\u3001MongoDB&#xff09;\u64c5\u957f\u7cbe\u786e\u5339\u914d\u67e5\u8be2&#xff0c;\u6bd4\u5982\"\u67e5\u627e\u65e5\u671f\u4e3a 2026-01-10 \u7684\u65e5\u8bb0\"\u3002\u4f46\u5f53\u6211\u4eec\u60f3\u67e5\u8be2\u8bed\u4e49\u76f8\u8fd1\u7684\u5185\u5bb9\u65f6&#xff0c;\u6bd4\u5982&amp;#xf","og_url":"https:\/\/www.wsisp.com\/helps\/106246.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2026-09-16T15:32:30+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"4 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/106246.html","url":"https:\/\/www.wsisp.com\/helps\/106246.html","name":"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2026-09-16T15:32:30+00:00","dateModified":"2026-09-16T15:32:30+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/106246.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/106246.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/106246.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"Milvus \u5411\u91cf\u6570\u636e\u5e93\u5b9e\u6218\u6307\u5357\uff1a\u4ece Docker \u90e8\u7f72\u5230 AI \u65e5\u8bb0\u8bed\u4e49\u641c\u7d22"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/106246","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=106246"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/106246\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=106246"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=106246"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=106246"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=106246"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}