"use strict";(self.webpackChunkelementary_public_docs=self.webpackChunkelementary_public_docs||[]).push([[54811],{15680:(t,a,e)=>{e.d(a,{xA:()=>u,yg:()=>N});var n=e(96540);function l(t,a,e){return a in t?Object.defineProperty(t,a,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[a]=e,t}function r(t,a){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable}))),e.push.apply(e,n)}return e}function g(t){for(var a=1;a=0||(l[e]=t[e]);return l}(t,a);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(l[e]=t[e])}return l}var p=n.createContext({}),y=function(t){var a=n.useContext(p),e=a;return t&&(e="function"==typeof t?t(a):g(g({},a),t)),e},u=function(t){var a=y(t.components);return n.createElement(p.Provider,{value:a},t.children)},i="mdxType",d={inlineCode:"code",wrapper:function(t){var a=t.children;return n.createElement(n.Fragment,{},a)}},s=n.forwardRef((function(t,a){var e=t.components,l=t.mdxType,r=t.originalType,p=t.parentName,u=m(t,["components","mdxType","originalType","parentName"]),i=y(e),s=l,N=i["".concat(p,".").concat(s)]||i[s]||d[s]||r;return e?n.createElement(N,g(g({ref:a},u),{},{components:e})):n.createElement(N,g({ref:a},u))}));function N(t,a){var e=arguments,l=a&&a.mdxType;if("string"==typeof t||l){var r=e.length,g=new Array(r);g[0]=s;var m={};for(var p in a)hasOwnProperty.call(a,p)&&(m[p]=a[p]);m.originalType=t,m[i]="string"==typeof t?t:l,g[1]=m;for(var y=2;y{e.r(a),e.d(a,{assets:()=>p,contentTitle:()=>g,default:()=>d,frontMatter:()=>r,metadata:()=>m,toc:()=>y});var n=e(58168),l=(e(96540),e(15680));const r={sidebar_position:1,title:"\u7aef\u4fa7\u79bb\u7ebf\u7248\u672cSDK\u6587\u6863"},g="\u79bb\u7ebf\u7248\u672cSDK\u6587\u6863",m={unversionedId:"model-as-a-service/nova/end/offline",id:"model-as-a-service/nova/end/offline",title:"\u7aef\u4fa7\u79bb\u7ebf\u7248\u672cSDK\u6587\u6863",description:"SenseChatLiteSDK API\u6587\u6863",source:"@site/docs/model-as-a-service/nova/end/offline.md",sourceDirName:"model-as-a-service/nova/end",slug:"/model-as-a-service/nova/end/offline",permalink:"/help/docs/model-as-a-service/nova/end/offline",draft:!1,editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/docs/model-as-a-service/nova/end/offline.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1,title:"\u7aef\u4fa7\u79bb\u7ebf\u7248\u672cSDK\u6587\u6863"},sidebar:"tutorialSidebar",previous:{title:"\u8bed\u97f3\u5feb\u901f\u590d\u523b",permalink:"/help/docs/model-as-a-service/nova/audio/TTS/Speech_clone"},next:{title:"\u7aef\u4fa7\u5728\u7ebf\u7248\u672cSDK\u6587\u6863",permalink:"/help/docs/model-as-a-service/nova/end/online"}},p={},y=[{value:"1 \u7ed3\u6784\u4f53\uff08structs\uff09\u548c\u7c7b\u578b\u522b\u540d\uff08typedefs\uff09\u8bf4\u660e",id:"1-\u7ed3\u6784\u4f53structs\u548c\u7c7b\u578b\u522b\u540dtypedefs\u8bf4\u660e",level:2},{value:"CMessage",id:"cmessage",level:3},{value:"ModelParameters",id:"modelparameters",level:3},{value:"LLMRuntimeStats",id:"llmruntimestats",level:3},{value:"smart_handle_t",id:"smart_handle_t",level:3},{value:"CStreamCompleteCallback",id:"cstreamcompletecallback",level:3},{value:"CStreamChatCallback",id:"cstreamchatcallback",level:3},{value:"2 \u679a\u4e3e\uff08enums\uff09",id:"2-\u679a\u4e3eenums",level:2},{value:"Error",id:"error",level:3},{value:"MemoryType",id:"memorytype",level:3},{value:"Role",id:"role",level:3},{value:"StreamStatus",id:"streamstatus",level:3},{value:"MemoryType",id:"memorytype-1",level:3},{value:"3 \u51fd\u6570\u63a5\u53e3",id:"3-\u51fd\u6570\u63a5\u53e3",level:2},{value:"SmartLLMCreate",id:"smartllmcreate",level:3},{value:"SmartLLMDestroy",id:"smartllmdestroy",level:3},{value:"SmartLLMAddLicense",id:"smartllmaddlicense",level:3},{value:"SmartLLMSetParams",id:"smartllmsetparams",level:3},{value:"SmartLLMSetMemoryType",id:"smartllmsetmemorytype",level:3},{value:"SmartLLMComplete",id:"smartllmcomplete",level:3},{value:"SmartLLMChat",id:"smartllmchat",level:3},{value:"SmartLLMStreamComplete",id:"smartllmstreamcomplete",level:3},{value:"SmartLLMStreamChat",id:"smartllmstreamchat",level:3},{value:"SmartLLMReleaseCompleteOutput",id:"smartllmreleasecompleteoutput",level:3},{value:"SmartLLMReleaseChatOutput",id:"smartllmreleasechatoutput",level:3},{value:"SmartLLMGetRuntimeStats",id:"smartllmgetruntimestats",level:3},{value:"SmartLLMClearMemory",id:"smartllmclearmemory",level:3},{value:"4 \u8c03\u7528\u793a\u4f8b\u4ee3\u7801",id:"4-\u8c03\u7528\u793a\u4f8b\u4ee3\u7801",level:2}],u={toc:y},i="wrapper";function d(t){let{components:a,...e}=t;return(0,l.yg)(i,(0,n.A)({},u,e,{components:a,mdxType:"MDXLayout"}),(0,l.yg)("h1",{id:"\u79bb\u7ebf\u7248\u672csdk\u6587\u6863"},"\u79bb\u7ebf\u7248\u672cSDK\u6587\u6863"),(0,l.yg)("p",null,"SenseChatLiteSDK API\u6587\u6863"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7248\u672c\u53f7"),(0,l.yg)("th",{parentName:"tr",align:null},"\u66f4\u65b0\u5185\u5bb9"),(0,l.yg)("th",{parentName:"tr",align:null},"\u5907\u6ce8"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"V1.0.0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u521d\u7248"),(0,l.yg)("td",{parentName:"tr",align:null})),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"V1.0.1"),(0,l.yg)("td",{parentName:"tr",align:null},"\u65b0\u589e\u5728\u7ebf\u7248\u672cSDK\u6587\u6863\u5185\u5bb9"),(0,l.yg)("td",{parentName:"tr",align:null})))),(0,l.yg)("p",null,"SenseTime"),(0,l.yg)("h2",{id:"1-\u7ed3\u6784\u4f53structs\u548c\u7c7b\u578b\u522b\u540dtypedefs\u8bf4\u660e"},"1 \u7ed3\u6784\u4f53\uff08structs\uff09\u548c\u7c7b\u578b\u522b\u540d\uff08typedefs\uff09\u8bf4\u660e"),(0,l.yg)("h3",{id:"cmessage"},"CMessage"),(0,l.yg)("p",null,"\u4e00\u4e2aCMessage\u5bf9\u8c61\u8868\u793a\u4e00\u6761\u5927\u8bed\u8a00\u6a21\u578b\u8f93\u5165\u3001\u8f93\u51fa\u7684\u6d88\u606f\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u6210\u5458\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"Role"),(0,l.yg)("td",{parentName:"tr",align:null},"role"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6d88\u606f\u89d2\u8272")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"content"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6d88\u606f\u5185\u5bb9")))),(0,l.yg)("h3",{id:"modelparameters"},"ModelParameters"),(0,l.yg)("p",null,"\u7aef\u4fa7\u6a21\u578b\u7684\u6a21\u578b\u53c2\u6570"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u6210\u5458\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"max_new_tokens"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6700\u5927\u751f\u6210\u7684token\u6570\u91cf")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"repetition_penalty"),(0,l.yg)("td",{parentName:"tr",align:null},"\u91cd\u590d\u60e9\u7f5a\u7cfb\u6570")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"temperature"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6e29\u5ea6\uff0c\u63a7\u5236\u968f\u673a\u6027")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"top_p"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6700\u5927token\u6982\u7387\u7d2f\u52a0\u548c\u9608\u503c")))),(0,l.yg)("h3",{id:"llmruntimestats"},"LLMRuntimeStats"),(0,l.yg)("p",null,"LLM\u5bf9\u8bdd\u72b6\u6001\u7edf\u8ba1"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u6210\u5458\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"prefill_toks_per_sec"),(0,l.yg)("td",{parentName:"tr",align:null},"Prefill\u901f\u5ea6\uff08token/s\uff09")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"decode_toks_per_sec"),(0,l.yg)("td",{parentName:"tr",align:null},"Decode\u901f\u5ea6\uff08token/s\uff09")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"prefill_time_last_round"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0a\u4e00\u8f6ePrefill\u65f6\u95f4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"float"),(0,l.yg)("td",{parentName:"tr",align:null},"percentage_of_terminal_toks"),(0,l.yg)("td",{parentName:"tr",align:null},"\u7aef\u4fa7Token\u5360\u6bd4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"prefill_toks_last_round"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0a\u4e00\u8f6ePrefill\u6570\u91cf")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"decode_toks_last_round"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0a\u4e00\u8f6eDecode\u6570\u91cf")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"historical_rounds"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5386\u53f2\u5bf9\u8bdd\u8f6e\u6570")))),(0,l.yg)("h3",{id:"smart_handle_t"},"smart_handle_t"),(0,l.yg)("p",null,"SmartLLM\u4e0a\u4e0b\u6587handle\uff0c\u7528\u4e8e\u8c03\u7528\u5404\u4e2a\u63a5\u53e3\u3002"),(0,l.yg)("h3",{id:"cstreamcompletecallback"},"CStreamCompleteCallback"),(0,l.yg)("p",null,"\u6d41\u5f0f\u8865\u5168\u7684\u56de\u8c03\u51fd\u6570\uff0c\u4eceSmartLLMStreamComplete\u8c03\u7528\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u56de\u8c03\u51fd\u6570\u53c2\u6570\u5217\u8868\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u53c2\u6570\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"StreamStatus"),(0,l.yg)("td",{parentName:"tr",align:null},"status"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6d41\u5f0f\u8865\u5168\u8fd0\u884c\u72b6\u6001")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"output"),(0,l.yg)("td",{parentName:"tr",align:null},"\u65b0\u589e\u7684token")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"void ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"user_data"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4eceSmartLLMStreamComplete\u7684user_data\u53c2\u6570\u8f6c\u53d1\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u56de\u8c03\u51fd\u6570\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u5982\u679c\u6b63\u5e38\u8fd4\u56de\uff0c\u8fd4\u56de0\uff0c\u5426\u5219\u8fd4\u56de\u975e0\u3002"),(0,l.yg)("h3",{id:"cstreamchatcallback"},"CStreamChatCallback"),(0,l.yg)("p",null,"\u6d41\u5f0f\u5bf9\u8bdd\u7684\u56de\u8c03\u51fd\u6570\uff0c\u4eceSmartLLMStreamChat\u8c03\u7528\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u56de\u8c03\u51fd\u6570\u53c2\u6570\u5217\u8868\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u53c2\u6570\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"StreamStatus"),(0,l.yg)("td",{parentName:"tr",align:null},"status"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6d41\u5f0f\u5bf9\u8bdd\u8fd0\u884c\u72b6\u6001")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"output ","_","size"),(0,l.yg)("td",{parentName:"tr",align:null},"\u65b0\u589e\u7684token")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"void ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"user_data"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4eceSmartLLMStreamChat\u7684user_data\u53c2\u6570\u8f6c\u53d1\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u56de\u8c03\u51fd\u6570\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u5982\u679c\u6b63\u5e38\u8fd4\u56de\uff0c\u8fd4\u56de0\uff0c\u5426\u5219\u8fd4\u56de\u975e0\u3002"),(0,l.yg)("h2",{id:"2-\u679a\u4e3eenums"},"2 \u679a\u4e3e\uff08enums\uff09"),(0,l.yg)("h3",{id:"error"},"Error"),(0,l.yg)("p",null,"\u8868\u793a\u63a5\u53e3\u8c03\u7528\u7684\u9519\u8bef\u72b6\u6001\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u503c"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kSuccess"),(0,l.yg)("td",{parentName:"tr",align:null},"0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u63a5\u53e3\u6b63\u5e38\u8fd4\u56de")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kInvalidArgs"),(0,l.yg)("td",{parentName:"tr",align:null},"-","1"),(0,l.yg)("td",{parentName:"tr",align:null},"\u53c2\u6570\u9519\u8bef")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kInvalidHandle"),(0,l.yg)("td",{parentName:"tr",align:null},"-","2"),(0,l.yg)("td",{parentName:"tr",align:null},"\u65e0\u6548\u7684handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kOutOfMemory"),(0,l.yg)("td",{parentName:"tr",align:null},"-","3"),(0,l.yg)("td",{parentName:"tr",align:null},"\u7cfb\u7edf\u5185\u5b58\u4e0d\u8db3")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kRunFailed"),(0,l.yg)("td",{parentName:"tr",align:null},"-","4"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6a21\u578b\u8fd0\u884c\u5931\u8d25")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kUndefined"),(0,l.yg)("td",{parentName:"tr",align:null},"-","5"),(0,l.yg)("td",{parentName:"tr",align:null},"\u672a\u5b9a\u4e49\u884c\u4e3a")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kFileNotFound"),(0,l.yg)("td",{parentName:"tr",align:null},"-","6"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6587\u4ef6\u627e\u4e0d\u5230")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kInvalidModelFile"),(0,l.yg)("td",{parentName:"tr",align:null},"-","7"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6a21\u578b\u6587\u4ef6\u9519\u8bef")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kTriggerSensitive"),(0,l.yg)("td",{parentName:"tr",align:null},"-","8"),(0,l.yg)("td",{parentName:"tr",align:null},"\u89e6\u53d1\u654f\u611f\u8bcd")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kExceededTokenLength"),(0,l.yg)("td",{parentName:"tr",align:null},"-","9"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8d85\u8fc7\u6700\u5927\u7684token\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kInvalidNetwork"),(0,l.yg)("td",{parentName:"tr",align:null},"-","10"),(0,l.yg)("td",{parentName:"tr",align:null},"\u7f51\u7edc\u5f02\u5e38")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kFileAlreadyExists"),(0,l.yg)("td",{parentName:"tr",align:null},"-","11"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6587\u4ef6\u5df2\u7ecf\u5b58\u5728")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kInvalidLicense"),(0,l.yg)("td",{parentName:"tr",align:null},"-","12"),(0,l.yg)("td",{parentName:"tr",align:null},"License\u9519\u8bef")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kLanguageNotAllowed"),(0,l.yg)("td",{parentName:"tr",align:null},"-","13"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u4e86\u4e0d\u652f\u6301\u7684\u8bed\u8a00")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kModuleNotInitialized"),(0,l.yg)("td",{parentName:"tr",align:null},"-","999"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6a21\u5757\u672a\u88ab\u521d\u59cb\u5316")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kUnsupported"),(0,l.yg)("td",{parentName:"tr",align:null},"-","1000"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0d\u652f\u6301\u7684\u64cd\u4f5c")))),(0,l.yg)("h3",{id:"memorytype"},"MemoryType"),(0,l.yg)("p",null,"\u8868\u793aLLM\u4e2d\u5386\u53f2\u5bf9\u8bdd\u7684\u5b58\u50a8\u7c7b\u578b\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u503c"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kNone"),(0,l.yg)("td",{parentName:"tr",align:null},"0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0d\u5b58\u50a8\u5386\u53f2\u5bf9\u8bdd")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kMemory"),(0,l.yg)("td",{parentName:"tr",align:null},"1"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5b58\u50a8\u5386\u53f2\u5bf9\u8bdd")))),(0,l.yg)("h3",{id:"role"},"Role"),(0,l.yg)("p",null,"\u8868\u793aLLM\u7684\u6d88\u606f\u89d2\u8272\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u503c"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kUser"),(0,l.yg)("td",{parentName:"tr",align:null},"0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u7528\u6237\u8f93\u5165Prompt")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kAssistant"),(0,l.yg)("td",{parentName:"tr",align:null},"1"),(0,l.yg)("td",{parentName:"tr",align:null},"LLM\u751f\u6210\u7684\u8f93\u51fa")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kSystem"),(0,l.yg)("td",{parentName:"tr",align:null},"2"),(0,l.yg)("td",{parentName:"tr",align:null},"\u7cfb\u7edfPrompt")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kTool"),(0,l.yg)("td",{parentName:"tr",align:null},"3"),(0,l.yg)("td",{parentName:"tr",align:null},"(Reserved)")))),(0,l.yg)("h3",{id:"streamstatus"},"StreamStatus"),(0,l.yg)("p",null,"\u8868\u793aLLM\u6d41\u5f0f\u751f\u6210\u7684\u8fd0\u884c\u72b6\u6001\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u503c"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kRunning"),(0,l.yg)("td",{parentName:"tr",align:null},"0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6d41\u5f0f")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kEnd"),(0,l.yg)("td",{parentName:"tr",align:null},"1"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5b58\u50a8\u5386\u53f2\u5bf9\u8bdd")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kSensetive"),(0,l.yg)("td",{parentName:"tr",align:null},"2"),(0,l.yg)("td",{parentName:"tr",align:null},"\u89e6\u53d1\u654f\u611f\u8bcd")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kError"),(0,l.yg)("td",{parentName:"tr",align:null},"3"),(0,l.yg)("td",{parentName:"tr",align:null},"\u56de\u8c03\u51fd\u6570\u8fd4\u56de\u4e86\u9519\u8bef")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kLanguageError"),(0,l.yg)("td",{parentName:"tr",align:null},"4"),(0,l.yg)("td",{parentName:"tr",align:null},"\u89e6\u53d1\u4e0d\u652f\u6301\u7684\u8bed\u8a00")))),(0,l.yg)("h3",{id:"memorytype-1"},"MemoryType"),(0,l.yg)("p",null,"\u8868\u793aLLM\u4e2d\u5386\u53f2\u5bf9\u8bdd\u7684\u5b58\u50a8\u7c7b\u578b\u3002"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u503c"),(0,l.yg)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kNone"),(0,l.yg)("td",{parentName:"tr",align:null},"0"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4e0d\u5b58\u50a8\u5386\u53f2\u5bf9\u8bdd")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"kMemory"),(0,l.yg)("td",{parentName:"tr",align:null},"1"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5b58\u50a8\u5386\u53f2\u5bf9\u8bdd")))),(0,l.yg)("h2",{id:"3-\u51fd\u6570\u63a5\u53e3"},"3 \u51fd\u6570\u63a5\u53e3"),(0,l.yg)("h3",{id:"smartllmcreate"},"SmartLLMCreate"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"Error SmartLLMCreate(\n const char *model_path, \n MemoryType mem_type,\n smart_handle_t *handle);\n")),(0,l.yg)("p",null,"\u521b\u5efaSmartLLM Handle"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"model_path"),(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6a21\u578b\u6587\u4ef6\u8def\u5f84")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"mem_type"),(0,l.yg)("td",{parentName:"tr",align:null},"MemoryType"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5386\u53f2\u8bb0\u5f55\u7c7b\u578b")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t \u2217"),(0,l.yg)("td",{parentName:"tr",align:null},"out"),(0,l.yg)("td",{parentName:"tr",align:null},"\u521b\u5efa\u7684SmartLLM Handle")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmdestroy"},"SmartLLMDestroy"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API Error SmartLLMDestroy(smart_handle_t handle);\n")),(0,l.yg)("p",null,"\u9500\u6bc1SmartLLM Handle"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmaddlicense"},"SmartLLMAddLicense"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API Error SmartLLMAddLicense(\n const char* license_path\n#if __ANDROID__\n , JNIEnv *env\n , jobject ctx\n#endif // __ANDROID__\n );\n")),(0,l.yg)("p",null,"\u6dfb\u52a0License\u6587\u4ef6\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"license_path"),(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8981\u9500\u6bc1\u7684\u6587\u4ef6\u4fe1\u606f\u6570\u7ec4\uff0c\u7531SmartLLMListDocument\u8fd4\u56de\u3002")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"env"),(0,l.yg)("td",{parentName:"tr",align:null},"JNIEnv ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"(\u4ec5Android\u5e73\u53f0) Java JNI\u63a5\u53e3\u7684JNIEnv\u5bf9\u8c61\u6307\u9488\u3002")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"ctx"),(0,l.yg)("td",{parentName:"tr",align:null},"jobject"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"(\u4ec5Android\u5e73\u53f0) android.Content.Context\u5bf9\u8c61\u5b9e\u4f8b\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmsetparams"},"SmartLLMSetParams"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMSetParams(\n smart_handle_t handle, \n const void *params);\n")),(0,l.yg)("p",null,"\u8bbe\u7f6eLLM\u53c2\u6570\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"params"),(0,l.yg)("td",{parentName:"tr",align:null},"const void ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u6a21\u578b\u53c2\u6570\uff0c\u6839\u636e\u4e0d\u540c\u7684\u6a21\u578b\u800c\u4e0d\u540c\u3002\u4f8b\u5982\uff0c\u53ef\u4f20\u5165 ModelParams")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmsetmemorytype"},"SmartLLMSetMemoryType"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMSetMemoryType(\n smart_handle_t handle, \n MemoryType mem_type);\n")),(0,l.yg)("p",null,"\u8bbe\u7f6e\u5386\u53f2\u8bb0\u5f55\u5b58\u50a8\u7c7b\u578b"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"mem_type"),(0,l.yg)("td",{parentName:"tr",align:null},"MemoryType"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u5386\u53f2\u8bb0\u5f55\u7c7b\u578b")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmcomplete"},"SmartLLMComplete"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMComplete(\n smart_handle_t handle, \n const char *prompt, \n const char **stops,\n int stops_num, char **output);\n")),(0,l.yg)("p",null,"\u4f7f\u7528LLM\u8865\u5168\u8f93\u5165\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"prompt"),(0,l.yg)("td",{parentName:"tr",align:null},"const char","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684Prompt")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops"),(0,l.yg)("td",{parentName:"tr",align:null},"const char","*","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\uff0c\u4e00\u4e2a\u5b57\u7b26\u4e32\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stop_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"output"),(0,l.yg)("td",{parentName:"tr",align:null},"char","*","*"),(0,l.yg)("td",{parentName:"tr",align:null},"out"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8fd4\u56de\u8865\u5168\u8f93\u51fa\u5185\u5bb9\u6307\u9488\uff0c\u9700\u8981\u8c03\u7528SmartLLMReleaseCompleteOutput\u91ca\u653e\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmchat"},"SmartLLMChat"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMChat(\n smart_handle_t handle, \n const CMessage *messages, \n int messages_num,\n const char **stops, \n int stops_num, \n CMessage *output);\n")),(0,l.yg)("p",null,"\u4f7f\u7528LLM\u8fdb\u884c\u975e\u6d41\u5f0f\u5bf9\u8bdd\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"messages"),(0,l.yg)("td",{parentName:"tr",align:null},"const CMessage","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684\u6d88\u606f\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"message_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684\u6d88\u606f\u6570\u7ec4\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops"),(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\uff0c\u4e00\u4e2a\u5b57\u7b26\u4e32\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"output"),(0,l.yg)("td",{parentName:"tr",align:null},"CMessage ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"out"),(0,l.yg)("td",{parentName:"tr",align:null},"LLM\u8f93\u51fa\u7684\u6d88\u606f\uff0c\u9700\u8981\u8c03\u7528SmartLLMReleaseChatOutput\u91ca\u653e\u5185\u5b58")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmstreamcomplete"},"SmartLLMStreamComplete"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMStreamComplete(\n smart_handle_t handle, \n const char *prompt,\n const char **stops, int stops_num,\n CStreamCompleteCallback callback, \n void *user_data);\n")),(0,l.yg)("p",null,"\u4f7f\u7528LLM\u6d41\u5f0f\u8865\u5168\u8f93\u5165\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"prompt"),(0,l.yg)("td",{parentName:"tr",align:null},"const char","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684Prompt")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops"),(0,l.yg)("td",{parentName:"tr",align:null},"const char","*","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\uff0c\u4e00\u4e2a\u5b57\u7b26\u4e32\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stop_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"callback"),(0,l.yg)("td",{parentName:"tr",align:null},"CStreamChatCallback"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u56de\u8c03\u51fd\u6570\uff0c\u5728\u6bcf\u4e00\u4e2aToken\u751f\u6210\u65f6\u8c03\u7528\u3002")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"user_data"),(0,l.yg)("td",{parentName:"tr",align:null},"void ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4efb\u610f\u5185\u5bb9\uff0c\u8f6c\u53d1\u7ed9\u56de\u8c03\u51fd\u6570\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c1\u7b2c2\u8282Error\u9519\u8bef\u5217\u8868\u3002"),(0,l.yg)("h3",{id:"smartllmstreamchat"},"SmartLLMStreamChat"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API \nError SmartLLMStreamChat(\n smart_handle_t handle, \n const CMessage *messages,\n int messages_num, \n const char **stops, \n int stops_num, \n CStreamChatCallback callback, \n void *user_data);\n")),(0,l.yg)("p",null,"\u4f7f\u7528LLM\u8fdb\u884c\u6d41\u5f0f\u5bf9\u8bdd\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"messages"),(0,l.yg)("td",{parentName:"tr",align:null},"const CMessage","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684\u6d88\u606f\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"message_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8f93\u5165\u7684\u6d88\u606f\u6570\u7ec4\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops"),(0,l.yg)("td",{parentName:"tr",align:null},"const char ","*","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\uff0c\u4e00\u4e2a\u5b57\u7b26\u4e32\u6570\u7ec4")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"stops_num"),(0,l.yg)("td",{parentName:"tr",align:null},"int"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u505c\u6b62\u8bcd\u5217\u8868\u957f\u5ea6")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"callback"),(0,l.yg)("td",{parentName:"tr",align:null},"CStreamChatCallback"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u56de\u8c03\u51fd\u6570\uff0c\u5728\u6bcf\u4e00\u4e2aToken\u751f\u6210\u65f6\u8c03\u7528\u3002")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"user_data"),(0,l.yg)("td",{parentName:"tr",align:null},"void ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"\u4efb\u610f\u5185\u5bb9\uff0c\u8f6c\u53d1\u7ed9\u56de\u8c03\u51fd\u6570\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmreleasecompleteoutput"},"SmartLLMReleaseCompleteOutput"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API Error SmartLLMReleaseCompleteOutput(char *output);\n")),(0,l.yg)("p",null,"\u9500\u6bc1SmartLLMComplete\u63a5\u53e3\u7684\u8f93\u51fa\u5b57\u7b26\u4e32\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"output"),(0,l.yg)("td",{parentName:"tr",align:null},"char ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLMComplete\u63a5\u53e3\u7684\u8f93\u51fa\u5b57\u7b26\u4e32")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmreleasechatoutput"},"SmartLLMReleaseChatOutput"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API Error SmartLLMReleaseChatOutput(CMessage *output);\n")),(0,l.yg)("p",null,"\u9500\u6bc1SmartLLMChat\u63a5\u53e3\u7684\u8f93\u51fa\u6d88\u606f\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"output"),(0,l.yg)("td",{parentName:"tr",align:null},"CMessage ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLMComplete\u63a5\u53e3\u7684\u8f93\u51fa\u6d88\u606f\u3002")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmgetruntimestats"},"SmartLLMGetRuntimeStats"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"SMART_API")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_API \nError SmartLLMGetRuntimeStats(\n smart_handle_t handle, \n LLMRuntimeStats *runtime_stats);\n")),(0,l.yg)("p",null,"\u83b7\u53d6SmartLLM\u4e0a\u4e00\u8f6e\u7684\u8fd0\u884c\u65f6\u72b6\u6001\u7edf\u8ba1\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"runtime_stats"),(0,l.yg)("td",{parentName:"tr",align:null},"LLMRuntimeStats ","*"),(0,l.yg)("td",{parentName:"tr",align:null},"out"),(0,l.yg)("td",{parentName:"tr",align:null},"\u8fd0\u884c\u65f6\u72b6\u6001\u7edf\u8ba1\u7ed3\u679c")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h3",{id:"smartllmclearmemory"},"SmartLLMClearMemory"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},"SMART_C_API Error SmartLLMClearMemory(smart_handle_t handle);\n")),(0,l.yg)("p",null,"\u6e05\u9664\u5386\u53f2\u5bf9\u8bdd\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u53c2\u6570\uff1a")),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7c7b\u578b"),(0,l.yg)("th",{parentName:"tr",align:null},"\u65b9\u5411"),(0,l.yg)("th",{parentName:"tr",align:null},"\u63cf\u8ff0"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"handle"),(0,l.yg)("td",{parentName:"tr",align:null},"smart_handle_t"),(0,l.yg)("td",{parentName:"tr",align:null},"in"),(0,l.yg)("td",{parentName:"tr",align:null},"SmartLLM Handle")))),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"\u8fd4\u56de\u503c\uff1a")),(0,l.yg)("p",null,"\u6210\u529f\u8fd4\u56dekSuccess\uff0c\u5931\u8d25\u8be6\u89c11.2\u8282Error\u9519\u8bef\u5217\u8868"),(0,l.yg)("h2",{id:"4-\u8c03\u7528\u793a\u4f8b\u4ee3\u7801"},"4 \u8c03\u7528\u793a\u4f8b\u4ee3\u7801"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-cpp"},'#include \n#include \n\n#include "core/common.h"\n#include "smart_llm.h"\n#include "smart_llm_common.h"\n\nint CompleteCallback(StreamStatus status, const char *output, void *user_data) {\n printf("status is %d, output is %s\\n", status, output);\n return 0;\n}\n\nint ChatCallback(StreamStatus status, const CMessage *output, void *user_data) {\n printf("status is %d, message.role is %d, message.content is %s\\n", status, output->role,\n output->content);\n\n return 0;\n}\n\nvoid PrintRuntimeStats(LLMRuntimeStats &runtime_stats) {\n printf(\n "Runtime stats is:\\n"\n " prefill_toks_per_sec %.1f\\n"\n " decode_toks_per_sec %.1f\\n"\n " prefill_time_last_round %.1f\\n"\n " percentage_of_terminal_toks %.1f\\n"\n " historical_rounds %d\\n",\n runtime_stats.prefill_toks_per_sec, runtime_stats.decode_toks_per_sec,\n runtime_stats.prefill_time_last_round, runtime_stats.percentage_of_terminal_toks,\n runtime_stats.historical_rounds);\n}\n\nint main(int argc, char **argv) {\n if (argc != 3) {\n printf("Using: %s license_file model_file\\n", argv[0]);\n return -1;\n }\n\n Error err;\n#if __ANDROID__\n err = SmartLLMAddLicense(argv[1], nullptr, nullptr);\n#else\n err = SmartLLMAddLicense(argv[1]);\n#endif // __ANDROID__\n if (kSuccess != err) {\n return -1;\n }\n\n smart_handle_t smart_handle;\n\n err = SmartLLMCreate(argv[2], kMemory, &smart_handle);\n if (kSuccess != err) {\n printf("SmartLLMCreate failed with %d\\n", err);\n return -1;\n }\n printf("SmartLLMCreate done\\n");\n\n ModelParameters terminal_params;\n terminal_params.max_new_tokens = 1024;\n terminal_params.repetition_penalty = 1.2f;\n terminal_params.temperature = 0.1f;\n terminal_params.top_p = 0.8f;\n\n err = SmartLLMSetParams(smart_handle, &terminal_params);\n if (kSuccess != err) {\n printf("SmartLLMSetParams failed with %d\\n", err);\n return -1;\n }\n printf("SmartLLMSetParams done\\n");\n\n\n err = SmartLLMSetMemoryType(smart_handle, kMemory);\n if (kSuccess != err) {\n printf("SmartLLMSetMemoryType failed with %d\\n", err);\n return -1;\n }\n printf("SmartLLMSetMemoryType done\\n");\n\n const char *stops[1] = {"aaa"};\n const int stops_num = 1;\n\n CMessage chat_in;\n const int messages_num = 1;\n chat_in.role = kUser;\n chat_in.content = "\u4f60\u597d";\n\n CMessage chat_out;\n err = SmartLLMChat(smart_handle, &chat_in, messages_num, stops, stops_num, &chat_out);\n printf("chat done, ret is %d, role is %d, content is %s\\n", err, chat_out.role, chat_out.content);\n\n err = SmartLLMReleaseChatOutput(&chat_out);\n if (kSuccess != err) {\n printf("SmartLLMReleaseChatOutput failed with %d\\n", err);\n return -1;\n }\n\n LLMRuntimeStats runtime_stats;\n err = SmartLLMGetRuntimeStats(smart_handle, &runtime_stats);\n if (kSuccess != err) {\n printf("SmartLLMGetRuntimeStats failed with %d\\n", err);\n return -1;\n }\n PrintRuntimeStats(runtime_stats);\n\n void *userdata;\n err = SmartLLMStreamChat(smart_handle, &chat_in, messages_num, stops, stops_num, ChatCallback,\n userdata);\n printf("SmartLLMStreamChat done, ret is %d\\n", err);\n\n err = SmartLLMGetRuntimeStats(smart_handle, &runtime_stats);\n if (kSuccess != err) {\n printf("SmartLLMGetRuntimeStats failed with %d\\n", err);\n return -1;\n }\n PrintRuntimeStats(runtime_stats);\n\n err = SmartLLMClearMemory(smart_handle);\n if (kSuccess != err) {\n printf("SmartLLMClearMemory failed with %d\\n", err);\n return -1;\n }\n printf("SmartLLMClearMemory done\\n");\n\n err = SmartLLMDestory(smart_handle);\n if (kSuccess != err) {\n printf("SmartLLMDestory failed with %d\\n", err);\n return -1;\n }\n\n printf("process done\\n");\n\n return 0;\n}\n')))}d.isMDXComponent=!0}}]);