1"use strict";(self.webpackChunklangchain_zh=self.webpackChunklangchain_zh||[]).push([[12287],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>g});var r=t(67294);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function o(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?i(Object(t),!0).forEach((function(n){a(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):i(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function l(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var p=r.createContext({}),s=function(e){var n=r.useContext(p),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},c=function(e){var n=s(e.components);return r.createElement(p.Provider,{value:n},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},d=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),u=s(t),d=a,g=u["".concat(p,".").concat(d)]||u[d]||m[d]||i;return t?r.createElement(g,o(o({ref:n},c),{},{components:t})):r.createElement(g,o({ref:n},c))}));function g(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var i=t.length,o=new Array(i);o[0]=d;var l={};for(var p in n)hasOwnProperty.call(n,p)&&(l[p]=n[p]);l.originalType=e,l[u]="string"==typeof e?e:a,o[1]=l;for(var s=2;s<i;s++)o[s]=t[s];return r.createElement.apply(null,o)}return r.createElement.apply(null,t)}d.displayName="MDXCreateElement"},89147:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>p,contentTitle:()=>o,default:()=>m,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=t(87462),a=(t(67294),t(3905));const i={},o="Jina",l={unversionedId:"integrations/providers/jina",id:"integrations/providers/jina",title:"Jina",description:"Jina\u662f\u4e00\u4e2a\u7528\u4e8eLangChain\u7684\u751f\u6001\u7cfb\u7edf\uff0c\u672c\u9875\u9762\u4ecb\u7ecd\u4e86\u5982\u4f55\u5728LangChain\u4e2d\u4f7f\u7528Jina\u3002\u5b83\u5206\u4e3a\u4e24\u4e2a\u90e8\u5206\uff1a\u5b89\u88c5\u548c\u8bbe\u7f6e\uff0c\u4ee5\u53ca\u5bf9\u7279\u5b9aJina\u5305\u88c5\u5668\u7684\u5f15\u7528\u3002",source:"@site/docs/integrations/providers/jina.mdx",sourceDirName:"integrations/providers",slug:"/integrations/providers/jina",permalink:"/docs/integrations/providers/jina",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"integrations",previous:{title:"Infino\uff08Infino\uff09",permalink:"/docs/integrations/providers/infino"},next:{title:"LanceDB\uff08LanceDB\uff09",permalink:"/docs/integrations/providers/lancedb"}},p={},s=[{value:"\u5b89\u88c5\u548c\u8bbe\u7f6e",id:"\u5b89\u88c5\u548c\u8bbe\u7f6e",level:2},{value:"\u5305\u88c5\u5668",id:"\u5305\u88c5\u5668",level:2},{value:"\u5d4c\u5165",id:"\u5d4c\u5165",level:3},{value:"\u90e8\u7f72",id:"\u90e8\u7f72",level:2},{value:"\u4f7f\u7528\u65b9\u6cd5",id:"\u4f7f\u7528\u65b9\u6cd5",level:3}],c={toc:s},u="wrapper";
1function m(e){let{components:n,...t}=e;return(0,a.kt)(u,(0,r.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"jina"},"Jina"),(0,a.kt)("p",null,"Jina\u662f\u4e00\u4e2a\u7528\u4e8eLangChain\u7684\u751f\u6001\u7cfb\u7edf\uff0c\u672c\u9875\u9762\u4ecb\u7ecd\u4e86\u5982\u4f55\u5728LangChain\u4e2d\u4f7f\u7528Jina\u3002\u5b83\u5206\u4e3a\u4e24\u4e2a\u90e8\u5206\uff1a\u5b89\u88c5\u548c\u8bbe\u7f6e\uff0c\u4ee5\u53ca\u5bf9\u7279\u5b9aJina\u5305\u88c5\u5668\u7684\u5f15\u7528\u3002"),(0,a.kt)("h2",{id:"\u5b89\u88c5\u548c\u8bbe\u7f6e"},"\u5b89\u88c5\u548c\u8bbe\u7f6e"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"\u4f7f\u7528",(0,a.kt)("inlineCode",{parentName:"li"},"pip install jina"),"\u5b89\u88c5Python SDK"),(0,a.kt)("li",{parentName:"ul"},"\u4ece",(0,a.kt)("a",{parentName:"li",href:"https://cloud.jina.ai/settings/tokens"},"\u8fd9\u91cc"),"\u83b7\u53d6Jina AI Cloud\u7684\u8ba4\u8bc1\u4ee4\u724c\uff0c\u5e76\u5c06\u5176\u8bbe\u7f6e\u4e3a\u73af\u5883\u53d8\u91cf\uff08",(0,a.kt)("inlineCode",{parentName:"li"},"JINA_AUTH_TOKEN"),"\uff09")),(0,a.kt)("h2",{id:"\u5305\u88c5\u5668"},"\u5305\u88c5\u5668"),(0,a.kt)("h3",{id:"\u5d4c\u5165"},"\u5d4c\u5165"),(0,a.kt)("p",null,"\u5b58\u5728\u4e00\u4e2aJina\u5d4c\u5165\u5305\u88c5\u5668\uff0c\u60a8\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u4ee3\u7801\u8bbf\u95ee\uff1a"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-python"},"from langchain.embeddings import JinaEmbeddings\n")),(0,a.kt)("p",null,"\u6709\u5173\u66f4\u8be6\u7ec6\u7684\u6b65\u9aa4\uff0c\u8bf7\u53c2\u89c1",(0,a.kt)("a",{parentName:"p",href:"/docs/integrations/text_embedding/jina.html"},"\u6b64\u7b14\u8bb0\u672c")),(0,a.kt)("h2",{id:"\u90e8\u7f72"},"\u90e8\u7f72"),(0,a.kt)("p",null,"\u7531Jina\u63d0\u4f9b\u652f\u6301\u7684",(0,a.kt)("a",{parentName:"p",href:"https://github.com/jina-ai/langchain-serve"},"Langchain-serve"),"\u53ef\u901a\u8fc7\u6613\u4e8e\u4f7f\u7528\u7684REST/WebSocket API\u548cSlack\u673a\u5668\u4eba\u5c06LangChain\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230\u751f\u4ea7\u73af\u5883\u3002"),(0,a.kt)("h3",{id:"\u4f7f\u7528\u65b9\u6cd5"},"\u4f7f\u7528\u65b9\u6cd5"),(0,a.kt)("p",null,"\u4ecePyPI\u5b89\u88c5\u8be5\u8f6f\u4ef6\u5305\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"pip install langchain-serve\n")),(0,a.kt)("p",null,"\u4f7f\u7528",(0,a.kt)("inlineCode",{parentName:"p"},"serving"),"\u88c5\u9970\u5668\u5305\u88c5\u60a8\u7684LangChain\u5e94\u7528\u7a0b\u5e8f\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-python"},'# app.py\nfrom lcserve import serving\n\n@serving\ndef ask(input: str) -> str:\n from langchain import LLMChain, OpenAI\n from langchain.agents import AgentExecutor, ZeroShotAgent\n \n tools = [...] # \u5de5\u5177\u5217\u8868\n prompt = ZeroShotAgent.create_prompt(\n tools, input_variables=["input", "agent_scratchpad"],\n )\n llm_chain = LLMChain(llm=OpenAI(temperature=0), prompt=prompt)\n agent = ZeroShotAgent(\n llm_chain=llm_chain, allowed_tools=[tool.name for tool in tools]\n )\n agent_executor = AgentExecutor.from_agent_and_tools(\n agent=agent, \n tools=tools, \n verbose=True,\n )\n return agent_executor.run(input)\n')),(0,a.kt)("p",null,"\u4f7f\u7528",(0,a.kt)("inlineCode",{parentName:"p"},"lc-serve deploy jcloud app"),"\u5728Jina AI Cloud\u4e0a\u90e8\u7f72\u3002\u90e8\u7f72\u540e\uff0c\u6211\u4eec\u53ef\u4ee5\u53d1\u9001POST\u8bf7\u6c42\u5230API\u7aef\u70b9\u4ee5\u83b7\u53d6\u54cd\u5e94\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'curl -X \'POST\' \'https://<your-app>.wolf.jina.ai/ask\' \\\n -d \'{\n "input": "Your Quesion here?",\n "envs": {\n "OPENAI_API_KEY": "sk-***"\n }\n}\'\n')),(0,a.kt)("p",null,"\u60a8\u8fd8\u53ef\u4ee5\u4f7f\u7528Docker-compose\u6216Kubernetes\u5728\u81ea\u5df1\u7684\u57fa\u7840\u8bbe\u65bd\u4e0a\u81ea\u6258\u7ba1\u8be5\u5e94\u7528\u7a0b\u5e8f\u3002\u6709\u5173\u66f4\u591a\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u53c2\u89c1",(0,a.kt)("a",{parentName:"p",href:"https://github.com/jina-ai/langchain-serve#-self-host-llm-apps-with-docker-compose-or-kubernetes"},"\u6b64\u5904"),"\u3002"),(0,a.kt)("p",null,"Langchain-serve\u8fd8\u5141\u8bb8\u5728",(0,a.kt)("a",{parentName:"p",href:"https://cloud.jina.ai/"},"Jina AI Cloud"),"\u6216\u81ea\u6258\u7ba1\u57fa\u7840\u8bbe\u65bd\u4e0a\u4f7f\u7528WebSocket API\u548cSlack\u673a\u5668\u4eba\u90e8\u7f72\u5e94\u7528\u7a0b\u5e8f\u3002"))}m.isMDXComponent=!0}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.