You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.html 62 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="prev" href="../FAQ/">
  7. <link rel="next" href="../Tutorials/NativeLibraryConfig/">
  8. <link rel="icon" href="../assets/images/favicon.png">
  9. <meta name="generator" content="mkdocs-1.4.3, mkdocs-material-9.1.20">
  10. <title>Contributing Guide - LLamaSharp Documentation</title>
  11. <link rel="stylesheet" href="../assets/stylesheets/main.eebd395e.min.css">
  12. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  13. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
  14. <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
  15. <script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
  16. </head>
  17. <body dir="ltr">
  18. <script>var palette=__md_get("__palette");if(palette&&"object"==typeof palette.color)for(var key of Object.keys(palette.color))document.body.setAttribute("data-md-color-"+key,palette.color[key])</script>
  19. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  20. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  21. <label class="md-overlay" for="__drawer"></label>
  22. <div data-md-component="skip">
  23. <a href="#llamasharp-contributing-guide" class="md-skip">
  24. Skip to content
  25. </a>
  26. </div>
  27. <div data-md-component="announce">
  28. </div>
  29. <div data-md-color-scheme="default" data-md-component="outdated" hidden>
  30. </div>
  31. <header class="md-header md-header--shadow" data-md-component="header">
  32. <nav class="md-header__inner md-grid" aria-label="Header">
  33. <a href=".." title="LLamaSharp Documentation" class="md-header__button md-logo" aria-label="LLamaSharp Documentation" data-md-component="logo">
  34. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  35. </a>
  36. <label class="md-header__button md-icon" for="__drawer">
  37. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
  38. </label>
  39. <div class="md-header__title" data-md-component="header-title">
  40. <div class="md-header__ellipsis">
  41. <div class="md-header__topic">
  42. <span class="md-ellipsis">
  43. LLamaSharp Documentation
  44. </span>
  45. </div>
  46. <div class="md-header__topic" data-md-component="header-topic">
  47. <span class="md-ellipsis">
  48. Contributing Guide
  49. </span>
  50. </div>
  51. </div>
  52. </div>
  53. <label class="md-header__button md-icon" for="__search">
  54. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  55. </label>
  56. <div class="md-search" data-md-component="search" role="dialog">
  57. <label class="md-search__overlay" for="__search"></label>
  58. <div class="md-search__inner" role="search">
  59. <form class="md-search__form" name="search">
  60. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
  61. <label class="md-search__icon md-icon" for="__search">
  62. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  63. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
  64. </label>
  65. <nav class="md-search__options" aria-label="Search">
  66. <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
  67. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
  68. </button>
  69. </nav>
  70. </form>
  71. <div class="md-search__output">
  72. <div class="md-search__scrollwrap" data-md-scrollfix>
  73. <div class="md-search-result" data-md-component="search-result">
  74. <div class="md-search-result__meta">
  75. Initializing search
  76. </div>
  77. <ol class="md-search-result__list" role="presentation"></ol>
  78. </div>
  79. </div>
  80. </div>
  81. </div>
  82. </div>
  83. </nav>
  84. </header>
  85. <div class="md-container" data-md-component="container">
  86. <main class="md-main" data-md-component="main">
  87. <div class="md-main__inner md-grid">
  88. <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
  89. <div class="md-sidebar__scrollwrap">
  90. <div class="md-sidebar__inner">
  91. <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  92. <label class="md-nav__title" for="__drawer">
  93. <a href=".." title="LLamaSharp Documentation" class="md-nav__button md-logo" aria-label="LLamaSharp Documentation" data-md-component="logo">
  94. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  95. </a>
  96. LLamaSharp Documentation
  97. </label>
  98. <ul class="md-nav__list" data-md-scrollfix>
  99. <li class="md-nav__item">
  100. <a href=".." class="md-nav__link">
  101. Overview
  102. </a>
  103. </li>
  104. <li class="md-nav__item">
  105. <a href="../QuickStart/" class="md-nav__link">
  106. Quick Start
  107. </a>
  108. </li>
  109. <li class="md-nav__item">
  110. <a href="../Architecture/" class="md-nav__link">
  111. Architecture
  112. </a>
  113. </li>
  114. <li class="md-nav__item">
  115. <a href="../FAQ/" class="md-nav__link">
  116. FAQ
  117. </a>
  118. </li>
  119. <li class="md-nav__item md-nav__item--active">
  120. <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
  121. <label class="md-nav__link md-nav__link--active" for="__toc">
  122. Contributing Guide
  123. <span class="md-nav__icon md-icon"></span>
  124. </label>
  125. <a href="./" class="md-nav__link md-nav__link--active">
  126. Contributing Guide
  127. </a>
  128. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  129. <label class="md-nav__title" for="__toc">
  130. <span class="md-nav__icon md-icon"></span>
  131. Table of contents
  132. </label>
  133. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  134. <li class="md-nav__item">
  135. <a href="#the-goal-of-llamasharp" class="md-nav__link">
  136. The goal of LLamaSharp
  137. </a>
  138. </li>
  139. <li class="md-nav__item">
  140. <a href="#how-to-compile-the-native-library-from-source" class="md-nav__link">
  141. How to compile the native library from source
  142. </a>
  143. </li>
  144. <li class="md-nav__item">
  145. <a href="#add-a-new-feature-to-llamasharp" class="md-nav__link">
  146. Add a new feature to LLamaSharp
  147. </a>
  148. </li>
  149. <li class="md-nav__item">
  150. <a href="#find-the-problem-and-fix-the-bug" class="md-nav__link">
  151. Find the problem and fix the BUG
  152. </a>
  153. </li>
  154. <li class="md-nav__item">
  155. <a href="#add-integrations" class="md-nav__link">
  156. Add integrations
  157. </a>
  158. </li>
  159. <li class="md-nav__item">
  160. <a href="#add-examples" class="md-nav__link">
  161. Add examples
  162. </a>
  163. </li>
  164. <li class="md-nav__item">
  165. <a href="#add-documents" class="md-nav__link">
  166. Add documents
  167. </a>
  168. </li>
  169. </ul>
  170. </nav>
  171. </li>
  172. <li class="md-nav__item md-nav__item--nested">
  173. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
  174. <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
  175. Tutorials
  176. <span class="md-nav__icon md-icon"></span>
  177. </label>
  178. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
  179. <label class="md-nav__title" for="__nav_6">
  180. <span class="md-nav__icon md-icon"></span>
  181. Tutorials
  182. </label>
  183. <ul class="md-nav__list" data-md-scrollfix>
  184. <li class="md-nav__item">
  185. <a href="../Tutorials/NativeLibraryConfig/" class="md-nav__link">
  186. Customize the native library loading
  187. </a>
  188. </li>
  189. <li class="md-nav__item">
  190. <a href="../Tutorials/Executors/" class="md-nav__link">
  191. Use executors
  192. </a>
  193. </li>
  194. <li class="md-nav__item">
  195. <a href="../Tutorials/ChatSession/" class="md-nav__link">
  196. Use ChatSession
  197. </a>
  198. </li>
  199. <li class="md-nav__item">
  200. <a href="../Tutorials/UnderstandLLamaContext/" class="md-nav__link">
  201. Understand LLamaContext
  202. </a>
  203. </li>
  204. <li class="md-nav__item">
  205. <a href="../Tutorials/GetEmbeddings/" class="md-nav__link">
  206. Get embeddings
  207. </a>
  208. </li>
  209. <li class="md-nav__item">
  210. <a href="../Tutorials/Quantization/" class="md-nav__link">
  211. Quantize the model
  212. </a>
  213. </li>
  214. </ul>
  215. </nav>
  216. </li>
  217. <li class="md-nav__item md-nav__item--nested">
  218. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
  219. <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
  220. Integrations
  221. <span class="md-nav__icon md-icon"></span>
  222. </label>
  223. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
  224. <label class="md-nav__title" for="__nav_7">
  225. <span class="md-nav__icon md-icon"></span>
  226. Integrations
  227. </label>
  228. <ul class="md-nav__list" data-md-scrollfix>
  229. <li class="md-nav__item">
  230. <a href="../Integrations/semantic-kernel/" class="md-nav__link">
  231. semantic-kernel integration
  232. </a>
  233. </li>
  234. <li class="md-nav__item">
  235. <a href="../Integrations/kernel-memory/" class="md-nav__link">
  236. kernel-memory integration
  237. </a>
  238. </li>
  239. <li class="md-nav__item">
  240. <a href="../Integrations/BotSharp.md" class="md-nav__link">
  241. BotSharp integration
  242. </a>
  243. </li>
  244. <li class="md-nav__item">
  245. <a href="../Integrations/Langchain.md" class="md-nav__link">
  246. Langchain integration
  247. </a>
  248. </li>
  249. </ul>
  250. </nav>
  251. </li>
  252. <li class="md-nav__item md-nav__item--nested">
  253. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
  254. <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
  255. Examples
  256. <span class="md-nav__icon md-icon"></span>
  257. </label>
  258. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
  259. <label class="md-nav__title" for="__nav_8">
  260. <span class="md-nav__icon md-icon"></span>
  261. Examples
  262. </label>
  263. <ul class="md-nav__list" data-md-scrollfix>
  264. <li class="md-nav__item">
  265. <a href="../Examples/BatchedExecutorFork/" class="md-nav__link">
  266. Bacthed executor - multi-output to one input
  267. </a>
  268. </li>
  269. <li class="md-nav__item">
  270. <a href="../Examples/BatchedExecutorGuidance/" class="md-nav__link">
  271. Batched executor - basic guidance
  272. </a>
  273. </li>
  274. <li class="md-nav__item">
  275. <a href="../Examples/BatchedExecutorRewind/" class="md-nav__link">
  276. Batched executor - rewinding to an earlier state
  277. </a>
  278. </li>
  279. <li class="md-nav__item">
  280. <a href="../Examples/ChatChineseGB2312/" class="md-nav__link">
  281. Chinese LLM - with GB2312 encoding
  282. </a>
  283. </li>
  284. <li class="md-nav__item">
  285. <a href="../Examples/ChatSessionStripRoleName/" class="md-nav__link">
  286. ChatSession - stripping role names
  287. </a>
  288. </li>
  289. <li class="md-nav__item">
  290. <a href="../Examples/ChatSessionWithHistory/" class="md-nav__link">
  291. ChatSession - with history
  292. </a>
  293. </li>
  294. <li class="md-nav__item">
  295. <a href="../Examples/ChatSessionWithRestart/" class="md-nav__link">
  296. ChatSession - restarting
  297. </a>
  298. </li>
  299. <li class="md-nav__item">
  300. <a href="../Examples/ChatSessionWithRoleName/" class="md-nav__link">
  301. ChatSession - Basic
  302. </a>
  303. </li>
  304. <li class="md-nav__item">
  305. <a href="../Examples/CodingAssistant/" class="md-nav__link">
  306. Coding assistant
  307. </a>
  308. </li>
  309. <li class="md-nav__item">
  310. <a href="../Examples/GetEmbeddings/" class="md-nav__link">
  311. Get embeddings
  312. </a>
  313. </li>
  314. <li class="md-nav__item">
  315. <a href="../Examples/GrammarJsonResponse/" class="md-nav__link">
  316. Grammar - json response
  317. </a>
  318. </li>
  319. <li class="md-nav__item">
  320. <a href="../Examples/InstructModeExecute/" class="md-nav__link">
  321. Instruct executor - basic
  322. </a>
  323. </li>
  324. <li class="md-nav__item">
  325. <a href="../Examples/InteractiveModeExecute/" class="md-nav__link">
  326. Interactive executor - basic
  327. </a>
  328. </li>
  329. <li class="md-nav__item">
  330. <a href="../Examples/KernelMemory/" class="md-nav__link">
  331. Kernel memory integration - basic
  332. </a>
  333. </li>
  334. <li class="md-nav__item">
  335. <a href="../Examples/KernelMemorySaveAndLoad/" class="md-nav__link">
  336. Kernel-memory - save & load
  337. </a>
  338. </li>
  339. <li class="md-nav__item">
  340. <a href="../Examples/LLavaInteractiveModeExecute/" class="md-nav__link">
  341. LLaVA - basic
  342. </a>
  343. </li>
  344. <li class="md-nav__item">
  345. <a href="../Examples/LoadAndSaveSession/" class="md-nav__link">
  346. ChatSession - load & save
  347. </a>
  348. </li>
  349. <li class="md-nav__item">
  350. <a href="../Examples/LoadAndSaveState/" class="md-nav__link">
  351. Executor - save/load state
  352. </a>
  353. </li>
  354. <li class="md-nav__item">
  355. <a href="../Examples/QuantizeModel/" class="md-nav__link">
  356. Quantization
  357. </a>
  358. </li>
  359. <li class="md-nav__item">
  360. <a href="../Examples/SemanticKernelChat/" class="md-nav__link">
  361. Semantic-kernel - chat
  362. </a>
  363. </li>
  364. <li class="md-nav__item">
  365. <a href="../Examples/SemanticKernelMemory/" class="md-nav__link">
  366. Semantic-kernel - with kernel-memory
  367. </a>
  368. </li>
  369. <li class="md-nav__item">
  370. <a href="../Examples/SemanticKernelPrompt/" class="md-nav__link">
  371. Semantic-kernel - basic
  372. </a>
  373. </li>
  374. <li class="md-nav__item">
  375. <a href="../Examples/StatelessModeExecute/" class="md-nav__link">
  376. Stateless executor
  377. </a>
  378. </li>
  379. <li class="md-nav__item">
  380. <a href="../Examples/TalkToYourself/" class="md-nav__link">
  381. Talk to yourself
  382. </a>
  383. </li>
  384. </ul>
  385. </nav>
  386. </li>
  387. <li class="md-nav__item md-nav__item--nested">
  388. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
  389. <label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
  390. API Reference
  391. <span class="md-nav__icon md-icon"></span>
  392. </label>
  393. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
  394. <label class="md-nav__title" for="__nav_9">
  395. <span class="md-nav__icon md-icon"></span>
  396. API Reference
  397. </label>
  398. <ul class="md-nav__list" data-md-scrollfix>
  399. <li class="md-nav__item">
  400. <a href="../xmldocs/" class="md-nav__link">
  401. index
  402. </a>
  403. </li>
  404. <li class="md-nav__item">
  405. <a href="../xmldocs/llama.abstractions.adaptercollection/" class="md-nav__link">
  406. llama.abstractions.adaptercollection
  407. </a>
  408. </li>
  409. <li class="md-nav__item">
  410. <a href="../xmldocs/llama.abstractions.icontextparams/" class="md-nav__link">
  411. llama.abstractions.icontextparams
  412. </a>
  413. </li>
  414. <li class="md-nav__item">
  415. <a href="../xmldocs/llama.abstractions.ihistorytransform/" class="md-nav__link">
  416. llama.abstractions.ihistorytransform
  417. </a>
  418. </li>
  419. <li class="md-nav__item">
  420. <a href="../xmldocs/llama.abstractions.iinferenceparams/" class="md-nav__link">
  421. llama.abstractions.iinferenceparams
  422. </a>
  423. </li>
  424. <li class="md-nav__item">
  425. <a href="../xmldocs/llama.abstractions.illamaexecutor/" class="md-nav__link">
  426. llama.abstractions.illamaexecutor
  427. </a>
  428. </li>
  429. <li class="md-nav__item">
  430. <a href="../xmldocs/llama.abstractions.illamaparams/" class="md-nav__link">
  431. llama.abstractions.illamaparams
  432. </a>
  433. </li>
  434. <li class="md-nav__item">
  435. <a href="../xmldocs/llama.abstractions.imodelparams/" class="md-nav__link">
  436. llama.abstractions.imodelparams
  437. </a>
  438. </li>
  439. <li class="md-nav__item">
  440. <a href="../xmldocs/llama.abstractions.itextstreamtransform/" class="md-nav__link">
  441. llama.abstractions.itextstreamtransform
  442. </a>
  443. </li>
  444. <li class="md-nav__item">
  445. <a href="../xmldocs/llama.abstractions.itexttransform/" class="md-nav__link">
  446. llama.abstractions.itexttransform
  447. </a>
  448. </li>
  449. <li class="md-nav__item">
  450. <a href="../xmldocs/llama.abstractions.loraadapter/" class="md-nav__link">
  451. llama.abstractions.loraadapter
  452. </a>
  453. </li>
  454. <li class="md-nav__item">
  455. <a href="../xmldocs/llama.abstractions.metadataoverride/" class="md-nav__link">
  456. llama.abstractions.metadataoverride
  457. </a>
  458. </li>
  459. <li class="md-nav__item">
  460. <a href="../xmldocs/llama.abstractions.metadataoverrideconverter/" class="md-nav__link">
  461. llama.abstractions.metadataoverrideconverter
  462. </a>
  463. </li>
  464. <li class="md-nav__item">
  465. <a href="../xmldocs/llama.abstractions.tensorsplitscollection/" class="md-nav__link">
  466. llama.abstractions.tensorsplitscollection
  467. </a>
  468. </li>
  469. <li class="md-nav__item">
  470. <a href="../xmldocs/llama.abstractions.tensorsplitscollectionconverter/" class="md-nav__link">
  471. llama.abstractions.tensorsplitscollectionconverter
  472. </a>
  473. </li>
  474. <li class="md-nav__item">
  475. <a href="../xmldocs/llama.antipromptprocessor/" class="md-nav__link">
  476. llama.antipromptprocessor
  477. </a>
  478. </li>
  479. <li class="md-nav__item">
  480. <a href="../xmldocs/llama.batched.alreadypromptedconversationexception/" class="md-nav__link">
  481. llama.batched.alreadypromptedconversationexception
  482. </a>
  483. </li>
  484. <li class="md-nav__item">
  485. <a href="../xmldocs/llama.batched.batchedexecutor/" class="md-nav__link">
  486. llama.batched.batchedexecutor
  487. </a>
  488. </li>
  489. <li class="md-nav__item">
  490. <a href="../xmldocs/llama.batched.cannotforkwhilerequiresinferenceexception/" class="md-nav__link">
  491. llama.batched.cannotforkwhilerequiresinferenceexception
  492. </a>
  493. </li>
  494. <li class="md-nav__item">
  495. <a href="../xmldocs/llama.batched.cannotmodifywhilerequiresinferenceexception/" class="md-nav__link">
  496. llama.batched.cannotmodifywhilerequiresinferenceexception
  497. </a>
  498. </li>
  499. <li class="md-nav__item">
  500. <a href="../xmldocs/llama.batched.cannotsamplerequiresinferenceexception/" class="md-nav__link">
  501. llama.batched.cannotsamplerequiresinferenceexception
  502. </a>
  503. </li>
  504. <li class="md-nav__item">
  505. <a href="../xmldocs/llama.batched.cannotsamplerequirespromptexception/" class="md-nav__link">
  506. llama.batched.cannotsamplerequirespromptexception
  507. </a>
  508. </li>
  509. <li class="md-nav__item">
  510. <a href="../xmldocs/llama.batched.conversation/" class="md-nav__link">
  511. llama.batched.conversation
  512. </a>
  513. </li>
  514. <li class="md-nav__item">
  515. <a href="../xmldocs/llama.batched.conversationextensions/" class="md-nav__link">
  516. llama.batched.conversationextensions
  517. </a>
  518. </li>
  519. <li class="md-nav__item">
  520. <a href="../xmldocs/llama.batched.experimentalbatchedexecutorexception/" class="md-nav__link">
  521. llama.batched.experimentalbatchedexecutorexception
  522. </a>
  523. </li>
  524. <li class="md-nav__item">
  525. <a href="../xmldocs/llama.chatsession-1/" class="md-nav__link">
  526. llama.chatsession-1
  527. </a>
  528. </li>
  529. <li class="md-nav__item">
  530. <a href="../xmldocs/llama.chatsession/" class="md-nav__link">
  531. llama.chatsession
  532. </a>
  533. </li>
  534. <li class="md-nav__item">
  535. <a href="../xmldocs/llama.common.authorrole/" class="md-nav__link">
  536. llama.common.authorrole
  537. </a>
  538. </li>
  539. <li class="md-nav__item">
  540. <a href="../xmldocs/llama.common.chathistory/" class="md-nav__link">
  541. llama.common.chathistory
  542. </a>
  543. </li>
  544. <li class="md-nav__item">
  545. <a href="../xmldocs/llama.common.fixedsizequeue-1/" class="md-nav__link">
  546. llama.common.fixedsizequeue-1
  547. </a>
  548. </li>
  549. <li class="md-nav__item">
  550. <a href="../xmldocs/llama.common.inferenceparams/" class="md-nav__link">
  551. llama.common.inferenceparams
  552. </a>
  553. </li>
  554. <li class="md-nav__item">
  555. <a href="../xmldocs/llama.common.mirostattype/" class="md-nav__link">
  556. llama.common.mirostattype
  557. </a>
  558. </li>
  559. <li class="md-nav__item">
  560. <a href="../xmldocs/llama.common.modelparams/" class="md-nav__link">
  561. llama.common.modelparams
  562. </a>
  563. </li>
  564. <li class="md-nav__item">
  565. <a href="../xmldocs/llama.exceptions.grammarexpectedname/" class="md-nav__link">
  566. llama.exceptions.grammarexpectedname
  567. </a>
  568. </li>
  569. <li class="md-nav__item">
  570. <a href="../xmldocs/llama.exceptions.grammarexpectednext/" class="md-nav__link">
  571. llama.exceptions.grammarexpectednext
  572. </a>
  573. </li>
  574. <li class="md-nav__item">
  575. <a href="../xmldocs/llama.exceptions.grammarexpectedprevious/" class="md-nav__link">
  576. llama.exceptions.grammarexpectedprevious
  577. </a>
  578. </li>
  579. <li class="md-nav__item">
  580. <a href="../xmldocs/llama.exceptions.grammarformatexception/" class="md-nav__link">
  581. llama.exceptions.grammarformatexception
  582. </a>
  583. </li>
  584. <li class="md-nav__item">
  585. <a href="../xmldocs/llama.exceptions.grammarunexpectedcharaltelement/" class="md-nav__link">
  586. llama.exceptions.grammarunexpectedcharaltelement
  587. </a>
  588. </li>
  589. <li class="md-nav__item">
  590. <a href="../xmldocs/llama.exceptions.grammarunexpectedcharrngelement/" class="md-nav__link">
  591. llama.exceptions.grammarunexpectedcharrngelement
  592. </a>
  593. </li>
  594. <li class="md-nav__item">
  595. <a href="../xmldocs/llama.exceptions.grammarunexpectedendelement/" class="md-nav__link">
  596. llama.exceptions.grammarunexpectedendelement
  597. </a>
  598. </li>
  599. <li class="md-nav__item">
  600. <a href="../xmldocs/llama.exceptions.grammarunexpectedendofinput/" class="md-nav__link">
  601. llama.exceptions.grammarunexpectedendofinput
  602. </a>
  603. </li>
  604. <li class="md-nav__item">
  605. <a href="../xmldocs/llama.exceptions.grammarunexpectedhexcharscount/" class="md-nav__link">
  606. llama.exceptions.grammarunexpectedhexcharscount
  607. </a>
  608. </li>
  609. <li class="md-nav__item">
  610. <a href="../xmldocs/llama.exceptions.grammarunknownescapecharacter/" class="md-nav__link">
  611. llama.exceptions.grammarunknownescapecharacter
  612. </a>
  613. </li>
  614. <li class="md-nav__item">
  615. <a href="../xmldocs/llama.exceptions.llamadecodeerror/" class="md-nav__link">
  616. llama.exceptions.llamadecodeerror
  617. </a>
  618. </li>
  619. <li class="md-nav__item">
  620. <a href="../xmldocs/llama.exceptions.loadweightsfailedexception/" class="md-nav__link">
  621. llama.exceptions.loadweightsfailedexception
  622. </a>
  623. </li>
  624. <li class="md-nav__item">
  625. <a href="../xmldocs/llama.exceptions.runtimeerror/" class="md-nav__link">
  626. llama.exceptions.runtimeerror
  627. </a>
  628. </li>
  629. <li class="md-nav__item">
  630. <a href="../xmldocs/llama.extensions.icontextparamsextensions/" class="md-nav__link">
  631. llama.extensions.icontextparamsextensions
  632. </a>
  633. </li>
  634. <li class="md-nav__item">
  635. <a href="../xmldocs/llama.extensions.imodelparamsextensions/" class="md-nav__link">
  636. llama.extensions.imodelparamsextensions
  637. </a>
  638. </li>
  639. <li class="md-nav__item">
  640. <a href="../xmldocs/llama.grammars.grammar/" class="md-nav__link">
  641. llama.grammars.grammar
  642. </a>
  643. </li>
  644. <li class="md-nav__item">
  645. <a href="../xmldocs/llama.grammars.grammarrule/" class="md-nav__link">
  646. llama.grammars.grammarrule
  647. </a>
  648. </li>
  649. <li class="md-nav__item">
  650. <a href="../xmldocs/llama.ichatmodel/" class="md-nav__link">
  651. llama.ichatmodel
  652. </a>
  653. </li>
  654. <li class="md-nav__item">
  655. <a href="../xmldocs/llama.llamacache/" class="md-nav__link">
  656. llama.llamacache
  657. </a>
  658. </li>
  659. <li class="md-nav__item">
  660. <a href="../xmldocs/llama.llamaembedder/" class="md-nav__link">
  661. llama.llamaembedder
  662. </a>
  663. </li>
  664. <li class="md-nav__item">
  665. <a href="../xmldocs/llama.llamamodel/" class="md-nav__link">
  666. llama.llamamodel
  667. </a>
  668. </li>
  669. <li class="md-nav__item">
  670. <a href="../xmldocs/llama.llamamodelv1/" class="md-nav__link">
  671. llama.llamamodelv1
  672. </a>
  673. </li>
  674. <li class="md-nav__item">
  675. <a href="../xmldocs/llama.llamaparams/" class="md-nav__link">
  676. llama.llamaparams
  677. </a>
  678. </li>
  679. <li class="md-nav__item">
  680. <a href="../xmldocs/llama.llamaquantizer/" class="md-nav__link">
  681. llama.llamaquantizer
  682. </a>
  683. </li>
  684. <li class="md-nav__item">
  685. <a href="../xmldocs/llama.llamastate/" class="md-nav__link">
  686. llama.llamastate
  687. </a>
  688. </li>
  689. <li class="md-nav__item">
  690. <a href="../xmldocs/llama.llamatransforms/" class="md-nav__link">
  691. llama.llamatransforms
  692. </a>
  693. </li>
  694. <li class="md-nav__item">
  695. <a href="../xmldocs/llama.llavaweights/" class="md-nav__link">
  696. llama.llavaweights
  697. </a>
  698. </li>
  699. <li class="md-nav__item">
  700. <a href="../xmldocs/llama.native.decoderesult/" class="md-nav__link">
  701. llama.native.decoderesult
  702. </a>
  703. </li>
  704. <li class="md-nav__item">
  705. <a href="../xmldocs/llama.native.ggmltype/" class="md-nav__link">
  706. llama.native.ggmltype
  707. </a>
  708. </li>
  709. <li class="md-nav__item">
  710. <a href="../xmldocs/llama.native.gpusplitmode/" class="md-nav__link">
  711. llama.native.gpusplitmode
  712. </a>
  713. </li>
  714. <li class="md-nav__item">
  715. <a href="../xmldocs/llama.native.llamabatch/" class="md-nav__link">
  716. llama.native.llamabatch
  717. </a>
  718. </li>
  719. <li class="md-nav__item">
  720. <a href="../xmldocs/llama.native.llamabeamsstate/" class="md-nav__link">
  721. llama.native.llamabeamsstate
  722. </a>
  723. </li>
  724. <li class="md-nav__item">
  725. <a href="../xmldocs/llama.native.llamabeamview/" class="md-nav__link">
  726. llama.native.llamabeamview
  727. </a>
  728. </li>
  729. <li class="md-nav__item">
  730. <a href="../xmldocs/llama.native.llamachatmessage/" class="md-nav__link">
  731. llama.native.llamachatmessage
  732. </a>
  733. </li>
  734. <li class="md-nav__item">
  735. <a href="../xmldocs/llama.native.llamacontextparams/" class="md-nav__link">
  736. llama.native.llamacontextparams
  737. </a>
  738. </li>
  739. <li class="md-nav__item">
  740. <a href="../xmldocs/llama.native.llamaftype/" class="md-nav__link">
  741. llama.native.llamaftype
  742. </a>
  743. </li>
  744. <li class="md-nav__item">
  745. <a href="../xmldocs/llama.native.llamagrammarelement/" class="md-nav__link">
  746. llama.native.llamagrammarelement
  747. </a>
  748. </li>
  749. <li class="md-nav__item">
  750. <a href="../xmldocs/llama.native.llamagrammarelementtype/" class="md-nav__link">
  751. llama.native.llamagrammarelementtype
  752. </a>
  753. </li>
  754. <li class="md-nav__item">
  755. <a href="../xmldocs/llama.native.llamakvcacheview/" class="md-nav__link">
  756. llama.native.llamakvcacheview
  757. </a>
  758. </li>
  759. <li class="md-nav__item">
  760. <a href="../xmldocs/llama.native.llamakvcacheviewcell/" class="md-nav__link">
  761. llama.native.llamakvcacheviewcell
  762. </a>
  763. </li>
  764. <li class="md-nav__item">
  765. <a href="../xmldocs/llama.native.llamakvcacheviewsafehandle/" class="md-nav__link">
  766. llama.native.llamakvcacheviewsafehandle
  767. </a>
  768. </li>
  769. <li class="md-nav__item">
  770. <a href="../xmldocs/llama.native.llamaloglevel/" class="md-nav__link">
  771. llama.native.llamaloglevel
  772. </a>
  773. </li>
  774. <li class="md-nav__item">
  775. <a href="../xmldocs/llama.native.llamamodelkvoverridetype/" class="md-nav__link">
  776. llama.native.llamamodelkvoverridetype
  777. </a>
  778. </li>
  779. <li class="md-nav__item">
  780. <a href="../xmldocs/llama.native.llamamodelmetadataoverride/" class="md-nav__link">
  781. llama.native.llamamodelmetadataoverride
  782. </a>
  783. </li>
  784. <li class="md-nav__item">
  785. <a href="../xmldocs/llama.native.llamamodelparams/" class="md-nav__link">
  786. llama.native.llamamodelparams
  787. </a>
  788. </li>
  789. <li class="md-nav__item">
  790. <a href="../xmldocs/llama.native.llamamodelquantizeparams/" class="md-nav__link">
  791. llama.native.llamamodelquantizeparams
  792. </a>
  793. </li>
  794. <li class="md-nav__item">
  795. <a href="../xmldocs/llama.native.llamanativebatch/" class="md-nav__link">
  796. llama.native.llamanativebatch
  797. </a>
  798. </li>
  799. <li class="md-nav__item">
  800. <a href="../xmldocs/llama.native.llamapoolingtype/" class="md-nav__link">
  801. llama.native.llamapoolingtype
  802. </a>
  803. </li>
  804. <li class="md-nav__item">
  805. <a href="../xmldocs/llama.native.llamapos/" class="md-nav__link">
  806. llama.native.llamapos
  807. </a>
  808. </li>
  809. <li class="md-nav__item">
  810. <a href="../xmldocs/llama.native.llamaropetype/" class="md-nav__link">
  811. llama.native.llamaropetype
  812. </a>
  813. </li>
  814. <li class="md-nav__item">
  815. <a href="../xmldocs/llama.native.llamaseqid/" class="md-nav__link">
  816. llama.native.llamaseqid
  817. </a>
  818. </li>
  819. <li class="md-nav__item">
  820. <a href="../xmldocs/llama.native.llamatoken/" class="md-nav__link">
  821. llama.native.llamatoken
  822. </a>
  823. </li>
  824. <li class="md-nav__item">
  825. <a href="../xmldocs/llama.native.llamatokendata/" class="md-nav__link">
  826. llama.native.llamatokendata
  827. </a>
  828. </li>
  829. <li class="md-nav__item">
  830. <a href="../xmldocs/llama.native.llamatokendataarray/" class="md-nav__link">
  831. llama.native.llamatokendataarray
  832. </a>
  833. </li>
  834. <li class="md-nav__item">
  835. <a href="../xmldocs/llama.native.llamatokendataarraynative/" class="md-nav__link">
  836. llama.native.llamatokendataarraynative
  837. </a>
  838. </li>
  839. <li class="md-nav__item">
  840. <a href="../xmldocs/llama.native.llamatokentype/" class="md-nav__link">
  841. llama.native.llamatokentype
  842. </a>
  843. </li>
  844. <li class="md-nav__item">
  845. <a href="../xmldocs/llama.native.llamavocabtype/" class="md-nav__link">
  846. llama.native.llamavocabtype
  847. </a>
  848. </li>
  849. <li class="md-nav__item">
  850. <a href="../xmldocs/llama.native.llavaimageembed/" class="md-nav__link">
  851. llama.native.llavaimageembed
  852. </a>
  853. </li>
  854. <li class="md-nav__item">
  855. <a href="../xmldocs/llama.native.nativeapi/" class="md-nav__link">
  856. llama.native.nativeapi
  857. </a>
  858. </li>
  859. <li class="md-nav__item">
  860. <a href="../xmldocs/llama.native.nativelibraryconfig/" class="md-nav__link">
  861. llama.native.nativelibraryconfig
  862. </a>
  863. </li>
  864. <li class="md-nav__item">
  865. <a href="../xmldocs/llama.native.ropescalingtype/" class="md-nav__link">
  866. llama.native.ropescalingtype
  867. </a>
  868. </li>
  869. <li class="md-nav__item">
  870. <a href="../xmldocs/llama.native.safellamacontexthandle/" class="md-nav__link">
  871. llama.native.safellamacontexthandle
  872. </a>
  873. </li>
  874. <li class="md-nav__item">
  875. <a href="../xmldocs/llama.native.safellamagrammarhandle/" class="md-nav__link">
  876. llama.native.safellamagrammarhandle
  877. </a>
  878. </li>
  879. <li class="md-nav__item">
  880. <a href="../xmldocs/llama.native.safellamahandlebase/" class="md-nav__link">
  881. llama.native.safellamahandlebase
  882. </a>
  883. </li>
  884. <li class="md-nav__item">
  885. <a href="../xmldocs/llama.native.safellamamodelhandle/" class="md-nav__link">
  886. llama.native.safellamamodelhandle
  887. </a>
  888. </li>
  889. <li class="md-nav__item">
  890. <a href="../xmldocs/llama.native.safellavaimageembedhandle/" class="md-nav__link">
  891. llama.native.safellavaimageembedhandle
  892. </a>
  893. </li>
  894. <li class="md-nav__item">
  895. <a href="../xmldocs/llama.native.safellavamodelhandle/" class="md-nav__link">
  896. llama.native.safellavamodelhandle
  897. </a>
  898. </li>
  899. <li class="md-nav__item">
  900. <a href="../xmldocs/llama.quantizer/" class="md-nav__link">
  901. llama.quantizer
  902. </a>
  903. </li>
  904. <li class="md-nav__item">
  905. <a href="../xmldocs/llama.sampling.basesamplingpipeline/" class="md-nav__link">
  906. llama.sampling.basesamplingpipeline
  907. </a>
  908. </li>
  909. <li class="md-nav__item">
  910. <a href="../xmldocs/llama.sampling.defaultsamplingpipeline/" class="md-nav__link">
  911. llama.sampling.defaultsamplingpipeline
  912. </a>
  913. </li>
  914. <li class="md-nav__item">
  915. <a href="../xmldocs/llama.sampling.greedysamplingpipeline/" class="md-nav__link">
  916. llama.sampling.greedysamplingpipeline
  917. </a>
  918. </li>
  919. <li class="md-nav__item">
  920. <a href="../xmldocs/llama.sampling.isamplingpipeline/" class="md-nav__link">
  921. llama.sampling.isamplingpipeline
  922. </a>
  923. </li>
  924. <li class="md-nav__item">
  925. <a href="../xmldocs/llama.sampling.isamplingpipelineextensions/" class="md-nav__link">
  926. llama.sampling.isamplingpipelineextensions
  927. </a>
  928. </li>
  929. <li class="md-nav__item">
  930. <a href="../xmldocs/llama.sampling.mirostate2samplingpipeline/" class="md-nav__link">
  931. llama.sampling.mirostate2samplingpipeline
  932. </a>
  933. </li>
  934. <li class="md-nav__item">
  935. <a href="../xmldocs/llama.sampling.mirostatesamplingpipeline/" class="md-nav__link">
  936. llama.sampling.mirostatesamplingpipeline
  937. </a>
  938. </li>
  939. <li class="md-nav__item">
  940. <a href="../xmldocs/llama.sessionstate/" class="md-nav__link">
  941. llama.sessionstate
  942. </a>
  943. </li>
  944. <li class="md-nav__item">
  945. <a href="../xmldocs/llama.streamingtokendecoder/" class="md-nav__link">
  946. llama.streamingtokendecoder
  947. </a>
  948. </li>
  949. <li class="md-nav__item">
  950. <a href="../xmldocs/llama.types.chatcompletion/" class="md-nav__link">
  951. llama.types.chatcompletion
  952. </a>
  953. </li>
  954. <li class="md-nav__item">
  955. <a href="../xmldocs/llama.types.chatcompletionchoice/" class="md-nav__link">
  956. llama.types.chatcompletionchoice
  957. </a>
  958. </li>
  959. <li class="md-nav__item">
  960. <a href="../xmldocs/llama.types.chatcompletionchunk/" class="md-nav__link">
  961. llama.types.chatcompletionchunk
  962. </a>
  963. </li>
  964. <li class="md-nav__item">
  965. <a href="../xmldocs/llama.types.chatcompletionchunkchoice/" class="md-nav__link">
  966. llama.types.chatcompletionchunkchoice
  967. </a>
  968. </li>
  969. <li class="md-nav__item">
  970. <a href="../xmldocs/llama.types.chatcompletionchunkdelta/" class="md-nav__link">
  971. llama.types.chatcompletionchunkdelta
  972. </a>
  973. </li>
  974. <li class="md-nav__item">
  975. <a href="../xmldocs/llama.types.chatcompletionmessage/" class="md-nav__link">
  976. llama.types.chatcompletionmessage
  977. </a>
  978. </li>
  979. <li class="md-nav__item">
  980. <a href="../xmldocs/llama.types.chatmessagerecord/" class="md-nav__link">
  981. llama.types.chatmessagerecord
  982. </a>
  983. </li>
  984. <li class="md-nav__item">
  985. <a href="../xmldocs/llama.types.chatrole/" class="md-nav__link">
  986. llama.types.chatrole
  987. </a>
  988. </li>
  989. <li class="md-nav__item">
  990. <a href="../xmldocs/llama.types.completion/" class="md-nav__link">
  991. llama.types.completion
  992. </a>
  993. </li>
  994. <li class="md-nav__item">
  995. <a href="../xmldocs/llama.types.completionchoice/" class="md-nav__link">
  996. llama.types.completionchoice
  997. </a>
  998. </li>
  999. <li class="md-nav__item">
  1000. <a href="../xmldocs/llama.types.completionchunk/" class="md-nav__link">
  1001. llama.types.completionchunk
  1002. </a>
  1003. </li>
  1004. <li class="md-nav__item">
  1005. <a href="../xmldocs/llama.types.completionlogprobs/" class="md-nav__link">
  1006. llama.types.completionlogprobs
  1007. </a>
  1008. </li>
  1009. <li class="md-nav__item">
  1010. <a href="../xmldocs/llama.types.completionusage/" class="md-nav__link">
  1011. llama.types.completionusage
  1012. </a>
  1013. </li>
  1014. <li class="md-nav__item">
  1015. <a href="../xmldocs/llama.types.embedding/" class="md-nav__link">
  1016. llama.types.embedding
  1017. </a>
  1018. </li>
  1019. <li class="md-nav__item">
  1020. <a href="../xmldocs/llama.types.embeddingdata/" class="md-nav__link">
  1021. llama.types.embeddingdata
  1022. </a>
  1023. </li>
  1024. <li class="md-nav__item">
  1025. <a href="../xmldocs/llama.types.embeddingusage/" class="md-nav__link">
  1026. llama.types.embeddingusage
  1027. </a>
  1028. </li>
  1029. <li class="md-nav__item">
  1030. <a href="../xmldocs/logger/" class="md-nav__link">
  1031. logger
  1032. </a>
  1033. </li>
  1034. </ul>
  1035. </nav>
  1036. </li>
  1037. </ul>
  1038. </nav>
  1039. </div>
  1040. </div>
  1041. </div>
  1042. <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
  1043. <div class="md-sidebar__scrollwrap">
  1044. <div class="md-sidebar__inner">
  1045. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  1046. <label class="md-nav__title" for="__toc">
  1047. <span class="md-nav__icon md-icon"></span>
  1048. Table of contents
  1049. </label>
  1050. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  1051. <li class="md-nav__item">
  1052. <a href="#the-goal-of-llamasharp" class="md-nav__link">
  1053. The goal of LLamaSharp
  1054. </a>
  1055. </li>
  1056. <li class="md-nav__item">
  1057. <a href="#how-to-compile-the-native-library-from-source" class="md-nav__link">
  1058. How to compile the native library from source
  1059. </a>
  1060. </li>
  1061. <li class="md-nav__item">
  1062. <a href="#add-a-new-feature-to-llamasharp" class="md-nav__link">
  1063. Add a new feature to LLamaSharp
  1064. </a>
  1065. </li>
  1066. <li class="md-nav__item">
  1067. <a href="#find-the-problem-and-fix-the-bug" class="md-nav__link">
  1068. Find the problem and fix the BUG
  1069. </a>
  1070. </li>
  1071. <li class="md-nav__item">
  1072. <a href="#add-integrations" class="md-nav__link">
  1073. Add integrations
  1074. </a>
  1075. </li>
  1076. <li class="md-nav__item">
  1077. <a href="#add-examples" class="md-nav__link">
  1078. Add examples
  1079. </a>
  1080. </li>
  1081. <li class="md-nav__item">
  1082. <a href="#add-documents" class="md-nav__link">
  1083. Add documents
  1084. </a>
  1085. </li>
  1086. </ul>
  1087. </nav>
  1088. </div>
  1089. </div>
  1090. </div>
  1091. <div class="md-content" data-md-component="content">
  1092. <article class="md-content__inner md-typeset">
  1093. <h1 id="llamasharp-contributing-guide">LLamaSharp Contributing Guide</h1>
  1094. <p>Hi, welcome to develop LLamaSharp with us together! We are always open for every contributor and any format of contributions! If you want to maintain this library actively together, please contact us to get the write access after some PRs. (Email: AsakusaRinne@gmail.com)</p>
  1095. <p>In this page, we introduce how to make contributions here easily. 😊</p>
  1096. <h2 id="the-goal-of-llamasharp">The goal of LLamaSharp</h2>
  1097. <p>At the beginning, LLamaSharp is a C# binding of <a href="https://github.com/ggerganov/llama.cpp">llama.cpp</a>. It provided only some wrappers for llama.cpp to let C#/.NET users could run LLM models on their local device efficiently even if without any experience with C++. After around a year of development, more tools and integrations has been added to LLamaSharp, significantly expanding the application of LLamaSharp. Though llama.cpp is still the only backend of LLamaSharp, the goal of this repository is more likely to be an efficient and easy-to-use library of LLM inference, rather than just a binding of llama.cpp.</p>
  1098. <p>In this way, our development of LLamaSharp is divided into two main directions:</p>
  1099. <ol>
  1100. <li>To make LLamaSharp more efficient. For example, <code>BatchedExecutor</code> could accept multiple queries and generate the response for them at the same time, which significantly improves the throughput. This part is always related with native APIs and executors in LLamaSharp.</li>
  1101. <li>To make it easier to use LLamaSharp. We believe the best library is to let users build powerful functionalities with simple code. Higher-level APIs and integrations with other libraries are the key points of it.</li>
  1102. </ol>
  1103. <h2 id="how-to-compile-the-native-library-from-source">How to compile the native library from source</h2>
  1104. <p>If you want to contribute to the first direction of our goal, you may need to compile the native library yourself.</p>
  1105. <p>Firstly, please follow the instructions in <a href="https://github.com/ggerganov/llama.cpp#build">llama.cpp readme</a> to configure your local environment. Most importantly, CMake with version higher than 3.14 should be installed on your device.</p>
  1106. <p>Secondly, clone the llama.cpp repositories. You could manually clone it and checkout to the right commit according to <a href="https://github.com/SciSharp/LLamaSharp?tab=readme-ov-file#map-of-llamasharp-and-llama.cpp-versions">Map of LLamaSharp and llama.cpp versions</a>, or use clone the submodule of LLamaSharp when cloning LLamaSharp.</p>
  1107. <pre><code class="language-shell">git clone --recursive https://github.com/SciSharp/LLamaSharp.git
  1108. </code></pre>
  1109. <p>If you want to support cublas in the compilation, please make sure that you've installed it. If you are using Intel CPU, please check the highest AVX (<a href="https://en.wikipedia.org/wiki/Advanced_Vector_Extensions">Advanced Vector Extensions</a>) level that is supported by your device.</p>
  1110. <p>As shown in <a href="https://github.com/ggerganov/llama.cpp/blob/master/CMakeLists.txt">llama.cpp cmake file</a>, there are many options that could be enabled or disabled when building the library. The following ones are commonly used when using it as a native library of LLamaSharp.</p>
  1111. <pre><code class="language-cpp">option(BUILD_SHARED_LIBS &quot;build shared libraries&quot;) // Please always enable it
  1112. option(LLAMA_NATIVE &quot;llama: enable -march=native flag&quot;) // Could be disabled
  1113. option(LLAMA_AVX &quot;llama: enable AVX&quot;) // Enable it if the highest supported avx level is AVX
  1114. option(LLAMA_AVX2 &quot;llama: enable AVX2&quot;) // Enable it if the highest supported avx level is AVX2
  1115. option(LLAMA_AVX512 &quot;llama: enable AVX512&quot;) // Enable it if the highest supported avx level is AVX512
  1116. option(LLAMA_BLAS &quot;llama: use BLAS&quot;) // Enable it if you want to use BLAS library to acclerate the computation on CPU
  1117. option(LLAMA_CUDA &quot;llama: use CUDA&quot;) // Enable it if you have CUDA device
  1118. option(LLAMA_CLBLAST &quot;llama: use CLBlast&quot;) // Enable it if you have a device with CLBLast or OpenCL support, for example, some AMD GPUs.
  1119. option(LLAMA_VULKAN &quot;llama: use Vulkan&quot;) // Enable it if you have a device with Vulkan support
  1120. option(LLAMA_METAL &quot;llama: use Metal&quot;) // Enable it if you are using a MAC with Metal device.
  1121. option(LLAMA_BUILD_TESTS &quot;llama: build tests&quot;) // Please disable it.
  1122. option(LLAMA_BUILD_EXAMPLES &quot;llama: build examples&quot;) // Please disable it.
  1123. option(LLAMA_BUILD_SERVER &quot;llama: build server example&quot;)// Please disable it.
  1124. </code></pre>
  1125. <p>Most importantly, <code>-DBUILD_SHARED_LIBS=ON</code> must be added to the cmake instruction and other options depends on you. For example, when building with cublas but without openblas, use the following instruction:</p>
  1126. <pre><code class="language-bash">mkdir build &amp;&amp; cd build
  1127. cmake .. -DLLAMA_CUBLAS=ON -DBUILD_SHARED_LIBS=ON
  1128. cmake --build . --config Release
  1129. </code></pre>
  1130. <p>Now you could find the <code>llama.dll</code>, <code>libllama.so</code> or <code>llama.dylib</code> in your build directory (or <code>build/bin</code>). </p>
  1131. <p>To load the compiled native library, please add the following code to the very beginning of your code.</p>
  1132. <pre><code class="language-cs">NativeLibraryConfig.Instance.WithLibrary(&quot;&lt;Your native library path&gt;&quot;);
  1133. </code></pre>
  1134. <h2 id="add-a-new-feature-to-llamasharp">Add a new feature to LLamaSharp</h2>
  1135. <p>After refactoring the framework in <code>v0.4.0</code>, LLamaSharp will try to maintain the backward compatibility. However, in the following cases a breaking change will be required:</p>
  1136. <ol>
  1137. <li>Due to some break changes in <a href="https://github.com/ggerganov/llama.cpp">llama.cpp</a>, making a breaking change will help to maintain the good abstraction and friendly user APIs.</li>
  1138. <li>An important feature cannot be implemented unless refactoring some parts.</li>
  1139. <li>After some discussions, an agreement was reached that making the break change is reasonable.</li>
  1140. </ol>
  1141. <p>If a new feature could be added without introducing any break change, please <strong>open a PR</strong> rather than open an issue first. We will never refuse the PR but help to improve it, unless it's malicious.</p>
  1142. <p>When adding the feature, please take care of the namespace and the naming convention. For example, if you are adding an integration for WPF, please put the code under namespace <code>LLama.WPF</code> or <code>LLama.Integration.WPF</code> instead of putting it under the root namespace. The naming convention of LLamaSharp follows the pascal naming convention, but in some parts that are invisible to users, you can do whatever you want.</p>
  1143. <h2 id="find-the-problem-and-fix-the-bug">Find the problem and fix the BUG</h2>
  1144. <p>If the issue is related to the LLM internal behaviour, such as endless generating the response, the best way to find the problem is to do comparison test between llama.cpp and LLamaSharp.</p>
  1145. <p>You could use exactly the same prompt, the same model and the same parameters to run the inference in llama.cpp and LLamaSharp respectively to see if it's really a problem caused by the implementation in LLamaSharp.</p>
  1146. <p>If the experiment showed that it worked well in llama.cpp but didn't in LLamaSharp, a search for the problem could be started. While the reason of the problem could be various, the best way I think is to add log-print in the code of llama.cpp and use it in LLamaSharp after compilation. Thus, when running LLamaSharp, you could see what happened in the native library.</p>
  1147. <p>During the BUG fix process, please don't hesitate to discuss together when you are blocked.</p>
  1148. <h2 id="add-integrations">Add integrations</h2>
  1149. <p>All kinds of integration are welcomed here! Currently the following integrations have been added but still need improvement:</p>
  1150. <ol>
  1151. <li>semantic-kernel</li>
  1152. <li>kernel-memory</li>
  1153. <li>BotSharp (maintained in SciSharp/BotSharp repo)</li>
  1154. <li>Langchain (maintained in tryAGI/LangChain repo)</li>
  1155. </ol>
  1156. <p>If you find another library that is good to be integrated, please open an issue to let us know!</p>
  1157. <h2 id="add-examples">Add examples</h2>
  1158. <p>There're mainly two ways to add an example:</p>
  1159. <ol>
  1160. <li>Add the example to <code>LLama.Examples</code> of the repository.</li>
  1161. <li>Put the example in another repository and add the link to the readme or docs of LLamaSharp.</li>
  1162. </ol>
  1163. <h2 id="add-documents">Add documents</h2>
  1164. <p>LLamaSharp uses <a href="https://github.com/mkdocs/mkdocs">mkdocs</a> to build the documentation, please follow the tutorial of mkdocs to add or modify documents in LLamaSharp.</p>
  1165. </article>
  1166. </div>
  1167. </div>
  1168. </main>
  1169. <footer class="md-footer">
  1170. <div class="md-footer-meta md-typeset">
  1171. <div class="md-footer-meta__inner md-grid">
  1172. <div class="md-copyright">
  1173. Made with
  1174. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  1175. Material for MkDocs
  1176. </a>
  1177. </div>
  1178. </div>
  1179. </div>
  1180. </footer>
  1181. </div>
  1182. <div class="md-dialog" data-md-component="dialog">
  1183. <div class="md-dialog__inner md-typeset"></div>
  1184. </div>
  1185. <script id="__config" type="application/json">{"base": "..", "features": [], "search": "../assets/javascripts/workers/search.74e28a9f.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
  1186. <script src="../assets/javascripts/bundle.220ee61c.min.js"></script>
  1187. </body>
  1188. </html>

C#/.NET上易用的LLM高性能推理框架,支持LLaMA和LLaVA系列模型。

Contributors (1)