From 31397de2d1567ba99841b0102aefe9289e06bcea Mon Sep 17 00:00:00 2001 From: NamH Date: Tue, 16 Apr 2024 17:23:45 +0700 Subject: [PATCH] Refactor/deprecate hugging face ext (#2620) * refactor: deprecate huggingface extension Signed-off-by: James --- core/src/browser/core.ts | 11 + core/src/browser/extensions/huggingface.ts | 30 - core/src/browser/extensions/index.ts | 5 - core/src/browser/extensions/model.ts | 10 +- core/src/node/api/processors/download.ts | 25 +- core/src/types/api/index.ts | 1 + .../types/huggingface/huggingfaceEntity.ts | 81 +- .../types/huggingface/huggingfaceInterface.ts | 58 - core/src/types/huggingface/index.ts | 1 - extensions/assistant-extension/package.json | 1 - .../conversational-extension/package.json | 3 +- .../webpack.config.js | 5 - extensions/huggingface-extension/.gitignore | 3 - extensions/huggingface-extension/.prettierrc | 8 - extensions/huggingface-extension/README.md | 75 - .../bin/mac-arm64/quantize | Bin 1131096 -> 0 bytes extensions/huggingface-extension/package.json | 58 - .../huggingface-extension/rollup.config.ts | 72 - .../src/@types/global.d.ts | 1 - extensions/huggingface-extension/src/index.ts | 399 ---- .../huggingface-extension/tsconfig.json | 20 - .../inference-groq-extension/package.json | 1 - .../webpack.config.js | 5 - .../inference-nitro-extension/package.json | 1 - .../inference-openai-extension/package.json | 1 - .../webpack.config.js | 5 - .../package.json | 1 - .../webpack.config.js | 5 - .../download.bat | 0 extensions/model-extension/package.json | 18 +- extensions/model-extension/rollup.config.ts | 5 +- .../scripts/convert-hf-to-gguf.py | 1720 +++++++++++++++++ extensions/model-extension/scripts/convert.py | 1478 ++++++++++++++ .../model-extension/scripts/gguf-py/LICENSE | 21 + .../model-extension/scripts/gguf-py/README.md | 81 + .../scripts/gguf-py/examples/writer.py | 40 + .../scripts/gguf-py/gguf/__init__.py | 5 + .../scripts/gguf-py/gguf/constants.py | 665 +++++++ .../scripts/gguf-py/gguf/gguf.py | 15 + .../scripts/gguf-py/gguf/gguf_reader.py | 264 +++ .../scripts/gguf-py/gguf/gguf_writer.py | 427 ++++ .../scripts/gguf-py/gguf/py.typed | 0 .../scripts/gguf-py/gguf/tensor_mapping.py | 332 ++++ .../scripts/gguf-py/gguf/vocab.py | 185 ++ .../scripts/gguf-py/pyproject.toml | 35 + .../scripts/gguf-py/scripts/__init__.py | 12 + .../gguf-py/scripts/gguf-convert-endian.py | 112 ++ .../scripts/gguf-py/scripts/gguf-dump.py | 117 ++ .../gguf-py/scripts/gguf-set-metadata.py | 90 + .../scripts/gguf-py/tests/test_gguf.py | 7 + .../scripts/install_deps.py | 0 .../scripts/version.txt | 0 .../src/@types/InvalidHostError.ts | 6 + .../src/@types/NotSupportModelError.ts | 6 + .../model-extension/src/@types/global.d.ts | 3 +- extensions/model-extension/src/index.ts | 316 ++- .../src/node/index.ts | 0 extensions/monitoring-extension/src/index.ts | 1 - .../monitoring-extension/src/node/index.ts | 2 +- .../tensorrt-llm-extension/package.json | 1 - uikit/src/modal/index.tsx | 2 +- web/containers/Layout/index.tsx | 2 + web/containers/Providers/EventListener.tsx | 3 +- web/helpers/atoms/HFConverter.atom.ts | 44 - web/helpers/atoms/HuggingFace.atom.ts | 12 + web/hooks/useConvertHuggingFaceModel.ts | 79 - web/hooks/useGetHFRepoData.ts | 52 +- web/public/icons/Jan_AppIcon.svg | 15 - web/public/icons/ViewGrid.svg | 6 - web/public/icons/avatar.svg | 1 - web/public/icons/ic_sidebar_off.svg | 9 - web/public/icons/ic_sidebar_on.svg | 9 - web/public/images/banner.jpg | Bin 309916 -> 0 bytes web/public/images/mobile.jpg | Bin 347270 -> 0 bytes web/public/images/preview.jpg | Bin 167088 -> 0 bytes web/screens/Chat/EngineSetting/index.tsx | 2 +- web/screens/Chat/ModelSetting/index.tsx | 2 +- web/screens/Chat/Sidebar/index.tsx | 4 +- .../ExploreModels/ExploreModelItem/index.tsx | 6 +- .../HuggingFaceConvertingErrorModal/index.tsx | 27 - .../HuggingFaceConvertingModal/index.tsx | 73 - .../ExploreModels/HuggingFaceModal/index.tsx | 70 - .../HuggingFaceRepoDataLoadedModal/index.tsx | 100 - .../HuggingFaceSearchErrorModal/index.tsx | 32 - .../HuggingFaceSearchModal/index.tsx | 45 - web/screens/ExploreModels/index.tsx | 71 +- web/screens/LocalServer/index.tsx | 5 +- .../Settings/ExtensionSetting/index.tsx | 2 +- .../ModelDownloadList/index.tsx | 52 + .../ModelDownloadRow/index.tsx | 169 ++ .../ModelSegmentInfo/index.tsx | 108 ++ .../HuggingFaceRepoDetailModal/index.tsx | 58 + web/screens/Settings/Models/ModelSearch.tsx | 121 ++ web/screens/Settings/Models/index.tsx | 40 +- 94 files changed, 6647 insertions(+), 1424 deletions(-) delete mode 100644 core/src/browser/extensions/huggingface.ts delete mode 100644 core/src/types/huggingface/huggingfaceInterface.ts delete mode 100644 extensions/huggingface-extension/.gitignore delete mode 100644 extensions/huggingface-extension/.prettierrc delete mode 100644 extensions/huggingface-extension/README.md delete mode 100755 extensions/huggingface-extension/bin/mac-arm64/quantize delete mode 100644 extensions/huggingface-extension/package.json delete mode 100644 extensions/huggingface-extension/rollup.config.ts delete mode 100644 extensions/huggingface-extension/src/@types/global.d.ts delete mode 100644 extensions/huggingface-extension/src/index.ts delete mode 100644 extensions/huggingface-extension/tsconfig.json rename extensions/{huggingface-extension => model-extension}/download.bat (100%) create mode 100755 extensions/model-extension/scripts/convert-hf-to-gguf.py create mode 100755 extensions/model-extension/scripts/convert.py create mode 100644 extensions/model-extension/scripts/gguf-py/LICENSE create mode 100644 extensions/model-extension/scripts/gguf-py/README.md create mode 100755 extensions/model-extension/scripts/gguf-py/examples/writer.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/__init__.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/constants.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/gguf.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/gguf_reader.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/gguf_writer.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/py.typed create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/tensor_mapping.py create mode 100644 extensions/model-extension/scripts/gguf-py/gguf/vocab.py create mode 100644 extensions/model-extension/scripts/gguf-py/pyproject.toml create mode 100644 extensions/model-extension/scripts/gguf-py/scripts/__init__.py create mode 100755 extensions/model-extension/scripts/gguf-py/scripts/gguf-convert-endian.py create mode 100755 extensions/model-extension/scripts/gguf-py/scripts/gguf-dump.py create mode 100755 extensions/model-extension/scripts/gguf-py/scripts/gguf-set-metadata.py create mode 100644 extensions/model-extension/scripts/gguf-py/tests/test_gguf.py rename extensions/{huggingface-extension => model-extension}/scripts/install_deps.py (100%) rename extensions/{huggingface-extension => model-extension}/scripts/version.txt (100%) create mode 100644 extensions/model-extension/src/@types/InvalidHostError.ts create mode 100644 extensions/model-extension/src/@types/NotSupportModelError.ts rename extensions/{huggingface-extension => model-extension}/src/node/index.ts (100%) delete mode 100644 web/helpers/atoms/HFConverter.atom.ts create mode 100644 web/helpers/atoms/HuggingFace.atom.ts delete mode 100644 web/hooks/useConvertHuggingFaceModel.ts delete mode 100644 web/public/icons/Jan_AppIcon.svg delete mode 100644 web/public/icons/ViewGrid.svg delete mode 100644 web/public/icons/avatar.svg delete mode 100644 web/public/icons/ic_sidebar_off.svg delete mode 100644 web/public/icons/ic_sidebar_on.svg delete mode 100644 web/public/images/banner.jpg delete mode 100644 web/public/images/mobile.jpg delete mode 100644 web/public/images/preview.jpg delete mode 100644 web/screens/ExploreModels/HuggingFaceConvertingErrorModal/index.tsx delete mode 100644 web/screens/ExploreModels/HuggingFaceConvertingModal/index.tsx delete mode 100644 web/screens/ExploreModels/HuggingFaceModal/index.tsx delete mode 100644 web/screens/ExploreModels/HuggingFaceRepoDataLoadedModal/index.tsx delete mode 100644 web/screens/ExploreModels/HuggingFaceSearchErrorModal/index.tsx delete mode 100644 web/screens/ExploreModels/HuggingFaceSearchModal/index.tsx create mode 100644 web/screens/Settings/HuggingFaceRepoDetailModal/ModelDownloadList/index.tsx create mode 100644 web/screens/Settings/HuggingFaceRepoDetailModal/ModelDownloadRow/index.tsx create mode 100644 web/screens/Settings/HuggingFaceRepoDetailModal/ModelSegmentInfo/index.tsx create mode 100644 web/screens/Settings/HuggingFaceRepoDetailModal/index.tsx create mode 100644 web/screens/Settings/Models/ModelSearch.tsx diff --git a/core/src/browser/core.ts b/core/src/browser/core.ts index 088c32e4e..fdbceb06b 100644 --- a/core/src/browser/core.ts +++ b/core/src/browser/core.ts @@ -28,6 +28,15 @@ const downloadFile: (downloadRequest: DownloadRequest, network?: NetworkConfig) network ) => globalThis.core?.api?.downloadFile(downloadRequest, network) +/** + * Get unit in bytes for a remote file. + * + * @param url - The url of the file. + * @returns {Promise} - A promise that resolves with the file size. + */ +const getFileSize: (url: string) => Promise = (url: string) => + globalThis.core.api?.getFileSize(url) + /** * Aborts the download of a specific file. * @param {string} fileName - The name of the file whose download is to be aborted. @@ -122,6 +131,7 @@ const systemInformation: () => Promise = () => */ const showToast: (title: string, message: string) => void = (title, message) => globalThis.core.api?.showToast(title, message) + /** * Register extension point function type definition */ @@ -150,5 +160,6 @@ export { getUserHomePath, systemInformation, showToast, + getFileSize, FileStat, } diff --git a/core/src/browser/extensions/huggingface.ts b/core/src/browser/extensions/huggingface.ts deleted file mode 100644 index b9c9626a0..000000000 --- a/core/src/browser/extensions/huggingface.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { BaseExtension, ExtensionTypeEnum } from '../extension' -import { HuggingFaceInterface, HuggingFaceRepoData, Quantization } from '../../types/huggingface' -import { Model } from '../../types/model' - -/** - * Hugging Face extension for converting HF models to GGUF. - */ -export abstract class HuggingFaceExtension extends BaseExtension implements HuggingFaceInterface { - interrupted = false - /** - * Hugging Face extension type. - */ - type(): ExtensionTypeEnum | undefined { - return ExtensionTypeEnum.HuggingFace - } - - abstract downloadModelFiles( - repoID: string, - repoData: HuggingFaceRepoData, - network?: { ignoreSSL?: boolean; proxy?: string } - ): Promise - abstract convert(repoID: string): Promise - abstract quantize(repoID: string, quantization: Quantization): Promise - abstract generateMetadata( - repoID: string, - repoData: HuggingFaceRepoData, - quantization: Quantization - ): Promise - abstract cancelConvert(repoID: string, repoData: HuggingFaceRepoData): Promise -} diff --git a/core/src/browser/extensions/index.ts b/core/src/browser/extensions/index.ts index 768886d49..85d5a8583 100644 --- a/core/src/browser/extensions/index.ts +++ b/core/src/browser/extensions/index.ts @@ -24,11 +24,6 @@ export { AssistantExtension } from './assistant' */ export { ModelExtension } from './model' -/** - * Hugging Face extension for converting HF models to GGUF. - */ -export { HuggingFaceExtension } from './huggingface' - /** * Base AI Engines. */ diff --git a/core/src/browser/extensions/model.ts b/core/src/browser/extensions/model.ts index 6dd52f192..30480bf5d 100644 --- a/core/src/browser/extensions/model.ts +++ b/core/src/browser/extensions/model.ts @@ -1,5 +1,12 @@ import { BaseExtension, ExtensionTypeEnum } from '../extension' -import { GpuSetting, ImportingModel, Model, ModelInterface, OptionType } from '../../types' +import { + GpuSetting, + HuggingFaceRepoData, + ImportingModel, + Model, + ModelInterface, + OptionType, +} from '../../types' /** * Model extension for managing models. @@ -24,4 +31,5 @@ export abstract class ModelExtension extends BaseExtension implements ModelInter abstract getConfiguredModels(): Promise abstract importModels(models: ImportingModel[], optionType: OptionType): Promise abstract updateModelInfo(modelInfo: Partial): Promise + abstract fetchHuggingFaceRepoData(repoId: string): Promise } diff --git a/core/src/node/api/processors/download.ts b/core/src/node/api/processors/download.ts index d26e46d59..a4af47400 100644 --- a/core/src/node/api/processors/download.ts +++ b/core/src/node/api/processors/download.ts @@ -129,11 +129,32 @@ export class Downloader implements Processor { }) } - resumeDownload(observer: any, fileName: any) { + resumeDownload(_observer: any, fileName: any) { DownloadManager.instance.networkRequests[fileName]?.resume() } - pauseDownload(observer: any, fileName: any) { + pauseDownload(_observer: any, fileName: any) { DownloadManager.instance.networkRequests[fileName]?.pause() } + + async getFileSize(_observer: any, url: string): Promise { + return new Promise((resolve, reject) => { + const request = require('request') + request( + { + url, + method: 'HEAD', + }, + function (err: any, response: any) { + if (err) { + console.error('Getting file size failed:', err) + reject(err) + } else { + const size: number = response.headers['content-length'] ?? -1 + resolve(size) + } + } + ) + }) + } } diff --git a/core/src/types/api/index.ts b/core/src/types/api/index.ts index 8f4ed5605..fb0167a04 100644 --- a/core/src/types/api/index.ts +++ b/core/src/types/api/index.ts @@ -51,6 +51,7 @@ export enum DownloadRoute { pauseDownload = 'pauseDownload', resumeDownload = 'resumeDownload', getDownloadProgress = 'getDownloadProgress', + getFileSize = 'getFileSize', } export enum DownloadEvent { diff --git a/core/src/types/huggingface/huggingfaceEntity.ts b/core/src/types/huggingface/huggingfaceEntity.ts index c3c320354..da846900b 100644 --- a/core/src/types/huggingface/huggingfaceEntity.ts +++ b/core/src/types/huggingface/huggingfaceEntity.ts @@ -1,34 +1,65 @@ export interface HuggingFaceRepoData { id: string + modelId: string + modelUrl?: string author: string + sha: string + downloads: number + lastModified: string + private: boolean + disabled: boolean + gated: boolean + pipeline_tag: 'text-generation' tags: Array<'transformers' | 'pytorch' | 'safetensors' | string> + cardData: Record siblings: { rfilename: string + downloadUrl?: string + fileSize?: number + quantization?: Quantization }[] - createdAt: string // ISO 8601 timestamp + createdAt: string } -/* eslint-disable @typescript-eslint/naming-convention */ -export enum Quantization { - Q3_K_S = 'Q3_K_S', - Q3_K_M = 'Q3_K_M', // eslint-disable-line @typescript-eslint/no-duplicate-enum-values - Q3_K_L = 'Q3_K_L', - Q4_K_S = 'Q4_K_S', - Q4_K_M = 'Q4_K_M', // eslint-disable-line @typescript-eslint/no-duplicate-enum-values - Q5_K_S = 'Q5_K_S', - Q5_K_M = 'Q5_K_M', // eslint-disable-line @typescript-eslint/no-duplicate-enum-values - Q4_0 = 'Q4_0', - Q4_1 = 'Q4_1', - Q5_0 = 'Q5_0', - Q5_1 = 'Q5_1', - IQ2_XXS = 'IQ2_XXS', - IQ2_XS = 'IQ2_XS', - Q2_K = 'Q2_K', - Q2_K_S = 'Q2_K_S', - Q6_K = 'Q6_K', - Q8_0 = 'Q8_0', - F16 = 'F16', - F32 = 'F32', - COPY = 'COPY', -} -/* eslint-enable @typescript-eslint/naming-convention */ +const CardDataKeys = [ + 'base_model', + 'datasets', + 'inference', + 'language', + 'library_name', + 'license', + 'model_creator', + 'model_name', + 'model_type', + 'pipeline_tag', + 'prompt_template', + 'quantized_by', + 'tags', +] as const +export type CardDataKeysTuple = typeof CardDataKeys +export type CardDataKeys = CardDataKeysTuple[number] + +export const AllQuantizations = [ + 'Q3_K_S', + 'Q3_K_M', + 'Q3_K_L', + 'Q4_K_S', + 'Q4_K_M', + 'Q5_K_S', + 'Q5_K_M', + 'Q4_0', + 'Q4_1', + 'Q5_0', + 'Q5_1', + 'IQ2_XXS', + 'IQ2_XS', + 'Q2_K', + 'Q2_K_S', + 'Q6_K', + 'Q8_0', + 'F16', + 'F32', + 'COPY', +] +export type QuantizationsTuple = typeof AllQuantizations +export type Quantization = QuantizationsTuple[number] diff --git a/core/src/types/huggingface/huggingfaceInterface.ts b/core/src/types/huggingface/huggingfaceInterface.ts deleted file mode 100644 index c99b2177d..000000000 --- a/core/src/types/huggingface/huggingfaceInterface.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { Model } from '../model' -import { HuggingFaceRepoData, Quantization } from './huggingfaceEntity' - -/** - * Hugging Face extension for converting HF models to GGUF. - * @extends BaseExtension - */ -export interface HuggingFaceInterface { - interrupted: boolean - /** - * Downloads a Hugging Face model. - * @param repoID - The repo ID of the model to convert. - * @param repoData - The repo data of the model to convert. - * @param network - Optional object to specify proxy/whether to ignore SSL certificates. - * @returns A promise that resolves when the download is complete. - */ - downloadModelFiles( - repoID: string, - repoData: HuggingFaceRepoData, - network?: { ignoreSSL?: boolean; proxy?: string } - ): Promise - - /** - * Converts a Hugging Face model to GGUF. - * @param repoID - The repo ID of the model to convert. - * @returns A promise that resolves when the conversion is complete. - */ - convert(repoID: string): Promise - - /** - * Quantizes a GGUF model. - * @param repoID - The repo ID of the model to quantize. - * @param quantization - The quantization to use. - * @returns A promise that resolves when the quantization is complete. - */ - quantize(repoID: string, quantization: Quantization): Promise - - /** - * Generates Jan model metadata from a Hugging Face model. - * @param repoID - The repo ID of the model to generate metadata for. - * @param repoData - The repo data of the model to generate metadata for. - * @param quantization - The quantization of the model. - * @returns A promise that resolves when the model metadata generation is complete. - */ - generateMetadata( - repoID: string, - repoData: HuggingFaceRepoData, - quantization: Quantization - ): Promise - - /** - * Cancels the convert of current Hugging Face model. - * @param repoID - The repository ID to cancel. - * @param repoData - The repository data to cancel. - * @returns {Promise} A promise that resolves when the download has been cancelled. - */ - cancelConvert(repoID: string, repoData: HuggingFaceRepoData): Promise -} diff --git a/core/src/types/huggingface/index.ts b/core/src/types/huggingface/index.ts index c108c55e2..a32e4a171 100644 --- a/core/src/types/huggingface/index.ts +++ b/core/src/types/huggingface/index.ts @@ -1,2 +1 @@ -export * from './huggingfaceInterface' export * from './huggingfaceEntity' diff --git a/extensions/assistant-extension/package.json b/extensions/assistant-extension/package.json index 094f9820c..aa5dba692 100644 --- a/extensions/assistant-extension/package.json +++ b/extensions/assistant-extension/package.json @@ -35,7 +35,6 @@ "@langchain/community": "0.0.13", "hnswlib-node": "^1.4.2", "langchain": "^0.0.214", - "path-browserify": "^1.0.1", "pdf-parse": "^1.1.1", "ts-loader": "^9.5.0" }, diff --git a/extensions/conversational-extension/package.json b/extensions/conversational-extension/package.json index a29967da4..d062ce9c3 100644 --- a/extensions/conversational-extension/package.json +++ b/extensions/conversational-extension/package.json @@ -22,8 +22,7 @@ "ts-loader": "^9.5.0" }, "dependencies": { - "@janhq/core": "file:../../core", - "path-browserify": "^1.0.1" + "@janhq/core": "file:../../core" }, "engines": { "node": ">=18.0.0" diff --git a/extensions/conversational-extension/webpack.config.js b/extensions/conversational-extension/webpack.config.js index b56a8f264..e4a0b2179 100644 --- a/extensions/conversational-extension/webpack.config.js +++ b/extensions/conversational-extension/webpack.config.js @@ -1,4 +1,3 @@ -const path = require('path') const webpack = require('webpack') module.exports = { @@ -16,15 +15,11 @@ module.exports = { }, output: { filename: 'index.js', // Adjust the output file name as needed - path: path.resolve(__dirname, 'dist'), library: { type: 'module' }, // Specify ESM output format }, plugins: [new webpack.DefinePlugin({})], resolve: { extensions: ['.ts', '.js'], - fallback: { - path: require.resolve('path-browserify'), - } }, // Do not minify the output, otherwise it breaks the class registration optimization: { diff --git a/extensions/huggingface-extension/.gitignore b/extensions/huggingface-extension/.gitignore deleted file mode 100644 index bdf39cc7f..000000000 --- a/extensions/huggingface-extension/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -bin -scripts/convert* -scripts/gguf-py diff --git a/extensions/huggingface-extension/.prettierrc b/extensions/huggingface-extension/.prettierrc deleted file mode 100644 index 46f1abcb0..000000000 --- a/extensions/huggingface-extension/.prettierrc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "semi": false, - "singleQuote": true, - "quoteProps": "consistent", - "trailingComma": "es5", - "endOfLine": "auto", - "plugins": ["prettier-plugin-tailwindcss"] -} diff --git a/extensions/huggingface-extension/README.md b/extensions/huggingface-extension/README.md deleted file mode 100644 index f9690da09..000000000 --- a/extensions/huggingface-extension/README.md +++ /dev/null @@ -1,75 +0,0 @@ -# Create a Jan Extension using Typescript - -Use this template to bootstrap the creation of a TypeScript Jan extension. 🚀 - -## Create Your Own Extension - -To create your own extension, you can use this repository as a template! Just follow the below instructions: - -1. Click the Use this template button at the top of the repository -2. Select Create a new repository -3. Select an owner and name for your new repository -4. Click Create repository -5. Clone your new repository - -## Initial Setup - -After you've cloned the repository to your local machine or codespace, you'll need to perform some initial setup steps before you can develop your extension. - -> [!NOTE] -> -> You'll need to have a reasonably modern version of -> [Node.js](https://nodejs.org) handy. If you are using a version manager like -> [`nodenv`](https://github.com/nodenv/nodenv) or -> [`nvm`](https://github.com/nvm-sh/nvm), you can run `nodenv install` in the -> root of your repository to install the version specified in -> [`package.json`](./package.json). Otherwise, 20.x or later should work! - -1. :hammer_and_wrench: Install the dependencies - - ```bash - npm install - ``` - -1. :building_construction: Package the TypeScript for distribution - - ```bash - npm run bundle - ``` - -1. :white_check_mark: Check your artifact - - There will be a tgz file in your extension directory now - -## Update the Extension Metadata - -The [`package.json`](package.json) file defines metadata about your extension, such as -extension name, main entry, description and version. - -When you copy this repository, update `package.json` with the name, description for your extension. - -## Update the Extension Code - -The [`src/`](./src/) directory is the heart of your extension! This contains the -source code that will be run when your extension functions are invoked. You can replace the -contents of this directory with your own code. - -There are a few things to keep in mind when writing your extension code: - -- Most Jan Extension functions are processed asynchronously. - In `index.ts`, you will see that the extension function will return a `Promise`. - - ```typescript - import { events, MessageEvent, MessageRequest } from '@janhq/core' - - function onStart(): Promise { - return events.on(MessageEvent.OnMessageSent, (data: MessageRequest) => - this.inference(data) - ) - } - ``` - - For more information about the Jan Extension Core module, see the - [documentation](https://github.com/janhq/jan/blob/main/core/README.md). - -So, what are you waiting for? Go ahead and start customizing your extension! diff --git a/extensions/huggingface-extension/bin/mac-arm64/quantize b/extensions/huggingface-extension/bin/mac-arm64/quantize deleted file mode 100755 index f8a149b1089d0ae2c3b1faa39085810584b6fa68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1131096 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

L`AQ%5oK)(Ks%mWlrrkM)hQ`>dhis_)uJ9- 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 C07)I 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

-F^l%rgv4%aQ0*jr{;ru#&f)8DF27b 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�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[?X5t`i-pXi`akuK-Ts2k22``8s#j7*XV>-Kwq(e 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

qO)>%p=&W62JS5d^Ku5w-17yO|}u8mUWx&{35 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 H97_HVgiDG! diff --git a/extensions/huggingface-extension/package.json b/extensions/huggingface-extension/package.json deleted file mode 100644 index c0c18c5eb..000000000 --- a/extensions/huggingface-extension/package.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "name": "@janhq/huggingface-extension", - "productName": "HuggingFace", - "version": "1.0.0", - "description": "Hugging Face extension for converting HF models to GGUF", - "main": "dist/index.js", - "node": "dist/node/index.cjs.js", - "author": "Jan ", - "license": "AGPL-3.0", - "scripts": { - "build": "tsc --module commonjs && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript --bundleConfigAsCjs", - "download:llama": "run-script-os", - "download:llama:linux": "LLAMA_CPP_VERSION=$(cat ./scripts/version.txt) && download https://github.com/ggerganov/llama.cpp/archive/refs/tags/${LLAMA_CPP_VERSION}.tar.gz -o . --filename ./scripts/llama.cpp.tar.gz && tar -xzf ./scripts/llama.cpp.tar.gz --wildcards '*/convert.py' '*/convert-hf-to-gguf.py' '*/gguf-py' && cpx \"./llama.cpp-$LLAMA_CPP_VERSION/**\" \"scripts\" && rimraf \"./scripts/llama.cpp.tar.gz\" && rimraf \"./llama.cpp-$LLAMA_CPP_VERSION\"", - "download:llama:darwin": "LLAMA_CPP_VERSION=$(cat ./scripts/version.txt) && download https://github.com/ggerganov/llama.cpp/archive/refs/tags/${LLAMA_CPP_VERSION}.tar.gz -o . --filename ./scripts/llama.cpp.tar.gz && tar -xzf ./scripts/llama.cpp.tar.gz '*/convert.py' '*/convert-hf-to-gguf.py' '*/gguf-py' && cpx \"./llama.cpp-$LLAMA_CPP_VERSION/**\" \"scripts\" && rimraf \"./scripts/llama.cpp.tar.gz\" && rimraf \"./llama.cpp-$LLAMA_CPP_VERSION\"", - "download:llama:win32": "download.bat", - "build:publish:linux": "rimraf *.tgz --glob && npm run build && npm run download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && npm pack && cpx *.tgz ../../pre-install", - "build:publish:darwin": "rimraf *.tgz --glob && npm run build && npm run download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && ../../.github/scripts/auto-sign.sh && npm pack && cpx *.tgz ../../pre-install", - "build:publish:win32": "rimraf *.tgz --glob && npm run build && npm run download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && npm pack && cpx *.tgz ../../pre-install", - "build:publish": "run-script-os" - }, - "exports": { - ".": "./dist/index.js", - "./main": "./dist/node/index.cjs.js" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-replace": "^5.0.5", - "@rollup/plugin-typescript": "^11.1.6", - "@types/node": "^20.11.16", - "cpx": "^1.5.0", - "download-cli": "^1.1.1", - "rimraf": "^5.0.5", - "rollup": "^4.9.6", - "rollup-plugin-sourcemaps": "^0.6.3", - "rollup-plugin-typescript2": "^0.36.0", - "run-script-os": "^1.1.6", - "typescript": "^5.3.3" - }, - "dependencies": { - "@janhq/core": "file:../../core", - "hyllama": "^0.1.2", - "python-shell": "^5.0.0", - "ts-loader": "^9.5.0" - }, - "bundledDependencies": [ - "python-shell" - ], - "engines": { - "node": ">=18.0.0" - }, - "files": [ - "dist/*", - "package.json", - "README.md" - ] -} diff --git a/extensions/huggingface-extension/rollup.config.ts b/extensions/huggingface-extension/rollup.config.ts deleted file mode 100644 index 16cf3c46d..000000000 --- a/extensions/huggingface-extension/rollup.config.ts +++ /dev/null @@ -1,72 +0,0 @@ -import resolve from '@rollup/plugin-node-resolve' -import commonjs from '@rollup/plugin-commonjs' -import sourceMaps from 'rollup-plugin-sourcemaps' -import typescript from 'rollup-plugin-typescript2' -import json from '@rollup/plugin-json' -import replace from '@rollup/plugin-replace' - -const packageJson = require('./package.json') - -export default [ - { - input: `src/index.ts`, - output: [{ file: packageJson.main, format: 'es', sourcemap: true }], - // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash') - external: [], - watch: { - include: 'src/**', - }, - plugins: [ - replace({ - preventAssignment: true, - NODE_MODULE_PATH: JSON.stringify( - `${packageJson.name}/${packageJson.node}` - ), - }), - // Allow json resolution - json(), - // Compile TypeScript files - typescript({ useTsconfigDeclarationDir: true }), - // Compile TypeScript files - // Allow bundling cjs modules (unlike webpack, rollup doesn't understand cjs) - commonjs(), - // Allow node_modules resolution, so you can use 'external' to control - // which external modules to include in the bundle - // https://github.com/rollup/rollup-plugin-node-resolve#usage - resolve({ - extensions: ['.js', '.ts'], - }), - - // Resolve source maps to the original source - sourceMaps(), - ], - }, - { - input: `src/node/index.ts`, - output: [ - { file: 'dist/node/index.cjs.js', format: 'cjs', sourcemap: true }, - ], - // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash') - external: [], - watch: { - include: 'src/node/**', - }, - plugins: [ - // Allow json resolution - json(), - // Compile TypeScript files - typescript({ useTsconfigDeclarationDir: true }), - // Allow bundling cjs modules (unlike webpack, rollup doesn't understand cjs) - commonjs(), - // Allow node_modules resolution, so you can use 'external' to control - // which external modules to include in the bundle - // https://github.com/rollup/rollup-plugin-node-resolve#usage - resolve({ - extensions: ['.ts', '.js', '.json'], - }), - - // Resolve source maps to the original source - sourceMaps(), - ], - }, -] diff --git a/extensions/huggingface-extension/src/@types/global.d.ts b/extensions/huggingface-extension/src/@types/global.d.ts deleted file mode 100644 index b30fe9d69..000000000 --- a/extensions/huggingface-extension/src/@types/global.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare const NODE_MODULE_PATH: string diff --git a/extensions/huggingface-extension/src/index.ts b/extensions/huggingface-extension/src/index.ts deleted file mode 100644 index 0425b9f88..000000000 --- a/extensions/huggingface-extension/src/index.ts +++ /dev/null @@ -1,399 +0,0 @@ -import { - fs, - downloadFile, - abortDownload, - joinPath, - HuggingFaceExtension, - HuggingFaceRepoData, - executeOnMain, - Quantization, - Model, - InferenceEngine, - getJanDataFolderPath, - events, - DownloadEvent, - log, - DownloadRequest, -} from '@janhq/core' - -declare global { - interface Window { - electronAPI?: any - } -} - -/** - * A extension for models - */ -export default class JanHuggingFaceExtension extends HuggingFaceExtension { - private static readonly _safetensorsRegexs = [ - /model\.safetensors$/, - /model-[0-9]+-of-[0-9]+\.safetensors$/, - ] - private static readonly _pytorchRegexs = [ - /pytorch_model\.bin$/, - /consolidated\.[0-9]+\.pth$/, - /pytorch_model-[0-9]+-of-[0-9]+\.bin$/, - /.*\.pt$/, - ] - interrupted = false - - /** - * Called when the extension is loaded. - * @override - */ - onLoad() {} - - /** - * Called when the extension is unloaded. - * @override - */ - onUnload(): void {} - - private getFileList(repoData: HuggingFaceRepoData): string[] { - // SafeTensors first, if not, then PyTorch - const modelFiles = repoData.siblings - .map((file) => file.rfilename) - .filter((file) => - JanHuggingFaceExtension._safetensorsRegexs.some((regex) => - regex.test(file) - ) - ) - if (modelFiles.length === 0) { - repoData.siblings.forEach((file) => { - if ( - JanHuggingFaceExtension._pytorchRegexs.some((regex) => - regex.test(file.rfilename) - ) - ) { - modelFiles.push(file.rfilename) - } - }) - } - - const vocabFiles = [ - 'tokenizer.model', - 'vocab.json', - 'tokenizer.json', - ].filter((file) => - repoData.siblings.some((sibling) => sibling.rfilename === file) - ) - - const etcFiles = repoData.siblings - .map((file) => file.rfilename) - .filter( - (file) => - (file.endsWith('.json') && !vocabFiles.includes(file)) || - file.endsWith('.txt') || - file.endsWith('.py') || - file.endsWith('.tiktoken') - ) - - return [...modelFiles, ...vocabFiles, ...etcFiles] - } - - private async getModelDirPath(repoID: string): Promise { - const modelName = repoID.split('/').slice(1).join('/') - return joinPath([await getJanDataFolderPath(), 'models', modelName]) - } - private async getConvertedModelPath(repoID: string): Promise { - const modelName = repoID.split('/').slice(1).join('/') - const modelDirPath = await this.getModelDirPath(repoID) - return joinPath([modelDirPath, modelName + '.gguf']) - } - private async getQuantizedModelPath( - repoID: string, - quantization: Quantization - ): Promise { - const modelName = repoID.split('/').slice(1).join('/') - const modelDirPath = await this.getModelDirPath(repoID) - return joinPath([ - modelDirPath, - modelName + `-${quantization.toLowerCase()}.gguf`, - ]) - } - private getCtxLength(config: { - max_sequence_length?: number - max_position_embeddings?: number - n_ctx?: number - }): number { - if (config.max_sequence_length) return config.max_sequence_length - if (config.max_position_embeddings) return config.max_position_embeddings - if (config.n_ctx) return config.n_ctx - return 4096 - } - - /** - * Downloads a Hugging Face model. - * @param repoID - The repo ID of the model to convert. - * @param repoData - The repo data of the model to convert. - * @param network - Optional object to specify proxy/whether to ignore SSL certificates. - * @returns A promise that resolves when the download is complete. - */ - async downloadModelFiles( - repoID: string, - repoData: HuggingFaceRepoData, - network?: { ignoreSSL?: boolean; proxy?: string } - ): Promise { - if (this.interrupted) return - const modelDirPath = await this.getModelDirPath(repoID) - if (!(await fs.existsSync(modelDirPath))) await fs.mkdir(modelDirPath) - const files = this.getFileList(repoData) - const filePaths: string[] = [] - - for (const file of files) { - const filePath = file - const localPath = await joinPath([modelDirPath, filePath]) - const url = `https://huggingface.co/${repoID}/resolve/main/${filePath}` - - if (this.interrupted) return - if (!(await fs.existsSync(localPath))) { - const downloadRequest: DownloadRequest = { - url, - localPath, - } - downloadFile(downloadRequest, network) - filePaths.push(filePath) - } - } - - await new Promise((resolve, reject) => { - if (filePaths.length === 0) resolve() - const onDownloadSuccess = async ({ fileName }: { fileName: string }) => { - if (filePaths.includes(fileName)) { - filePaths.splice(filePaths.indexOf(fileName), 1) - if (filePaths.length === 0) { - events.off(DownloadEvent.onFileDownloadSuccess, onDownloadSuccess) - events.off(DownloadEvent.onFileDownloadError, onDownloadError) - resolve() - } - } - } - - const onDownloadError = async ({ - fileName, - error, - }: { - fileName: string - error: Error - }) => { - if (filePaths.includes(fileName)) { - this.cancelConvert(repoID, repoData) - events.off(DownloadEvent.onFileDownloadSuccess, onDownloadSuccess) - events.off(DownloadEvent.onFileDownloadError, onDownloadError) - reject(error) - } - } - - events.on(DownloadEvent.onFileDownloadSuccess, onDownloadSuccess) - events.on(DownloadEvent.onFileDownloadError, onDownloadError) - }) - } - - /** - * Converts a Hugging Face model to GGUF. - * @param repoID - The repo ID of the model to convert. - * @returns A promise that resolves when the conversion is complete. - */ - async convert(repoID: string): Promise { - if (this.interrupted) return - const modelDirPath = await this.getModelDirPath(repoID) - const modelOutPath = await this.getConvertedModelPath(repoID) - if (!(await fs.existsSync(modelDirPath))) { - throw new Error('Model dir not found') - } - if (await fs.existsSync(modelOutPath)) return - - await executeOnMain(NODE_MODULE_PATH, 'installDeps') - if (this.interrupted) return - - try { - await executeOnMain( - NODE_MODULE_PATH, - 'convertHf', - modelDirPath, - modelOutPath + '.temp' - ) - } catch (err) { - log(`[Conversion]::Debug: Error using hf-to-gguf.py, trying convert.py`) - - let ctx = 4096 - try { - const config = await fs.readFileSync( - await joinPath([modelDirPath, 'config.json']), - 'utf8' - ) - const configParsed = JSON.parse(config) - ctx = this.getCtxLength(configParsed) - configParsed.max_sequence_length = ctx - await fs.writeFileSync( - await joinPath([modelDirPath, 'config.json']), - JSON.stringify(configParsed, null, 2) - ) - } catch (err) { - log(`${err}`) - // ignore missing config.json - } - - const bpe = await fs.existsSync( - await joinPath([modelDirPath, 'vocab.json']) - ) - - await executeOnMain( - NODE_MODULE_PATH, - 'convert', - modelDirPath, - modelOutPath + '.temp', - { - ctx, - bpe, - } - ) - } - await executeOnMain( - NODE_MODULE_PATH, - 'renameSync', - modelOutPath + '.temp', - modelOutPath - ) - - for (const file of await fs.readdirSync(modelDirPath)) { - if ( - modelOutPath.endsWith(file) || - (file.endsWith('config.json') && !file.endsWith('_config.json')) - ) - continue - await fs.unlinkSync(await joinPath([modelDirPath, file])) - } - } - - /** - * Quantizes a GGUF model. - * @param repoID - The repo ID of the model to quantize. - * @param quantization - The quantization to use. - * @returns A promise that resolves when the quantization is complete. - */ - async quantize(repoID: string, quantization: Quantization): Promise { - if (this.interrupted) return - const modelDirPath = await this.getModelDirPath(repoID) - const modelOutPath = await this.getQuantizedModelPath(repoID, quantization) - if (!(await fs.existsSync(modelDirPath))) { - throw new Error('Model dir not found') - } - if (await fs.existsSync(modelOutPath)) return - - await executeOnMain( - NODE_MODULE_PATH, - 'quantize', - await this.getConvertedModelPath(repoID), - modelOutPath + '.temp', - quantization - ) - await executeOnMain( - NODE_MODULE_PATH, - 'renameSync', - modelOutPath + '.temp', - modelOutPath - ) - - await fs.unlinkSync(await this.getConvertedModelPath(repoID)) - } - - /** - * Generates Jan model metadata from a Hugging Face model. - * @param repoID - The repo ID of the model to generate metadata for. - * @param repoData - The repo data of the model to generate metadata for. - * @param quantization - The quantization of the model. - * @returns A promise that resolves when the model metadata generation is complete. - */ - async generateMetadata( - repoID: string, - repoData: HuggingFaceRepoData, - quantization: Quantization - ): Promise { - const modelName = repoID.split('/').slice(1).join('/') - const filename = `${modelName}-${quantization.toLowerCase()}.gguf` - const modelDirPath = await this.getModelDirPath(repoID) - const modelPath = await this.getQuantizedModelPath(repoID, quantization) - const modelConfigPath = await joinPath([modelDirPath, 'model.json']) - if (!(await fs.existsSync(modelPath))) { - throw new Error('Model not found') - } - - const size = await executeOnMain(NODE_MODULE_PATH, 'getSize', modelPath) - let ctx = 4096 - try { - const config = await fs.readFileSync( - await joinPath([modelDirPath, 'config.json']), - 'utf8' - ) - ctx = this.getCtxLength(JSON.parse(config)) - fs.unlinkSync(await joinPath([modelDirPath, 'config.json'])) - } catch (err) { - // ignore missing config.json - } - // maybe later, currently it's gonna use too much memory - // const buffer = await fs.readFileSync(quantizedModelPath) - // const ggufData = ggufMetadata(buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength)) - - const metadata: Model = { - object: 'model', - version: '1.0', - format: 'gguf', - sources: [ - { - url: `https://huggingface.co/${repoID}`, // i think this is just for download but not sure, - filename, - }, - ], - id: modelName, - name: modelName, - created: Date.now(), - description: `Auto converted from Hugging Face model: ${repoID}`, - settings: { - ctx_len: ctx, - prompt_template: '', - llama_model_path: modelName, - }, - parameters: { - temperature: 0.7, - top_p: 0.95, - stream: true, - max_tokens: 4096, - // stop: [''], seems like we dont really need this..? - frequency_penalty: 0, - presence_penalty: 0, - }, - metadata: { - author: repoData.author, - tags: repoData.tags, - size, - }, - engine: InferenceEngine.nitro, - } - - await fs.writeFileSync(modelConfigPath, JSON.stringify(metadata, null, 2)) - } - - /** - * Cancels the convert of current Hugging Face model. - * @param repoID - The repository ID to cancel. - * @param repoData - The repository data to cancel. - * @returns {Promise} A promise that resolves when the download has been cancelled. - */ - async cancelConvert( - repoID: string, - repoData: HuggingFaceRepoData - ): Promise { - this.interrupted = true - const modelDirPath = await this.getModelDirPath(repoID) - const files = this.getFileList(repoData) - for (const file of files) { - const filePath = file - const localPath = await joinPath([modelDirPath, filePath]) - await abortDownload(localPath) - } - - executeOnMain(NODE_MODULE_PATH, 'killProcesses') - } -} diff --git a/extensions/huggingface-extension/tsconfig.json b/extensions/huggingface-extension/tsconfig.json deleted file mode 100644 index a42f31602..000000000 --- a/extensions/huggingface-extension/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "compilerOptions": { - "moduleResolution": "node", - "target": "es2020", - "module": "ES2020", - "lib": ["es2015", "es2016", "es2017", "dom"], - "strict": true, - "sourceMap": true, - "declaration": true, - "allowSyntheticDefaultImports": true, - "experimentalDecorators": true, - "emitDecoratorMetadata": true, - "declarationDir": "dist/types", - "outDir": "dist", - "importHelpers": true, - "typeRoots": ["node_modules/@types"], - "resolveJsonModule": true, - }, - "include": ["src"], -} diff --git a/extensions/inference-groq-extension/package.json b/extensions/inference-groq-extension/package.json index faf1b4a98..4fc08927b 100644 --- a/extensions/inference-groq-extension/package.json +++ b/extensions/inference-groq-extension/package.json @@ -25,7 +25,6 @@ "dependencies": { "@janhq/core": "file:../../core", "fetch-retry": "^5.0.6", - "path-browserify": "^1.0.1", "ulidx": "^2.3.0" }, "engines": { diff --git a/extensions/inference-groq-extension/webpack.config.js b/extensions/inference-groq-extension/webpack.config.js index 58ade764b..199dee42c 100644 --- a/extensions/inference-groq-extension/webpack.config.js +++ b/extensions/inference-groq-extension/webpack.config.js @@ -1,4 +1,3 @@ -const path = require('path') const webpack = require('webpack') const packageJson = require('./package.json') const settingJson = require('./resources/settings.json') @@ -26,14 +25,10 @@ module.exports = { ], output: { filename: 'index.js', // Adjust the output file name as needed - path: path.resolve(__dirname, 'dist'), library: { type: 'module' }, // Specify ESM output format }, resolve: { extensions: ['.ts', '.js'], - fallback: { - path: require.resolve('path-browserify'), - }, }, optimization: { minimize: false, diff --git a/extensions/inference-nitro-extension/package.json b/extensions/inference-nitro-extension/package.json index 1916da4b6..a756d275b 100644 --- a/extensions/inference-nitro-extension/package.json +++ b/extensions/inference-nitro-extension/package.json @@ -51,7 +51,6 @@ "@janhq/core": "file:../../core", "decompress": "^4.2.1", "fetch-retry": "^5.0.6", - "path-browserify": "^1.0.1", "rxjs": "^7.8.1", "tcp-port-used": "^1.0.2", "terminate": "^2.6.1", diff --git a/extensions/inference-openai-extension/package.json b/extensions/inference-openai-extension/package.json index 2dd75d300..d1a751069 100644 --- a/extensions/inference-openai-extension/package.json +++ b/extensions/inference-openai-extension/package.json @@ -26,7 +26,6 @@ "dependencies": { "@janhq/core": "file:../../core", "fetch-retry": "^5.0.6", - "path-browserify": "^1.0.1", "ulidx": "^2.3.0" }, "engines": { diff --git a/extensions/inference-openai-extension/webpack.config.js b/extensions/inference-openai-extension/webpack.config.js index f3d0db183..cd5e65c72 100644 --- a/extensions/inference-openai-extension/webpack.config.js +++ b/extensions/inference-openai-extension/webpack.config.js @@ -1,4 +1,3 @@ -const path = require('path') const webpack = require('webpack') const packageJson = require('./package.json') const settingJson = require('./resources/settings.json') @@ -26,14 +25,10 @@ module.exports = { ], output: { filename: 'index.js', // Adjust the output file name as needed - path: path.resolve(__dirname, 'dist'), library: { type: 'module' }, // Specify ESM output format }, resolve: { extensions: ['.ts', '.js'], - fallback: { - path: require.resolve('path-browserify'), - }, }, optimization: { minimize: false, diff --git a/extensions/inference-triton-trtllm-extension/package.json b/extensions/inference-triton-trtllm-extension/package.json index 06c4976e1..6612dc191 100644 --- a/extensions/inference-triton-trtllm-extension/package.json +++ b/extensions/inference-triton-trtllm-extension/package.json @@ -26,7 +26,6 @@ "dependencies": { "@janhq/core": "file:../../core", "fetch-retry": "^5.0.6", - "path-browserify": "^1.0.1", "rxjs": "^7.8.1", "ulidx": "^2.3.0" }, diff --git a/extensions/inference-triton-trtllm-extension/webpack.config.js b/extensions/inference-triton-trtllm-extension/webpack.config.js index 13d32c52d..6486d5efc 100644 --- a/extensions/inference-triton-trtllm-extension/webpack.config.js +++ b/extensions/inference-triton-trtllm-extension/webpack.config.js @@ -1,4 +1,3 @@ -const path = require('path') const webpack = require('webpack') const packageJson = require('./package.json') const settingJson = require('./resources/settings.json') @@ -24,14 +23,10 @@ module.exports = { ], output: { filename: 'index.js', // Adjust the output file name as needed - path: path.resolve(__dirname, 'dist'), library: { type: 'module' }, // Specify ESM output format }, resolve: { extensions: ['.ts', '.js'], - fallback: { - path: require.resolve('path-browserify'), - }, }, optimization: { minimize: false, diff --git a/extensions/huggingface-extension/download.bat b/extensions/model-extension/download.bat similarity index 100% rename from extensions/huggingface-extension/download.bat rename to extensions/model-extension/download.bat diff --git a/extensions/model-extension/package.json b/extensions/model-extension/package.json index 0967e1632..0a3b57262 100644 --- a/extensions/model-extension/package.json +++ b/extensions/model-extension/package.json @@ -4,15 +4,23 @@ "version": "1.0.30", "description": "Model Management Extension provides model exploration and seamless downloads", "main": "dist/index.js", - "module": "dist/module.js", + "node": "dist/node/index.cjs.js", "author": "Jan ", "license": "AGPL-3.0", "scripts": { - "build": "rollup -c rollup.config.ts", - "build:publish": "rimraf *.tgz --glob && yarn build && npm pack && cpx *.tgz ../../pre-install" + "build": "tsc --module commonjs && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript --bundleConfigAsCjs", + "download:llama": "run-script-os", + "download:llama:linux": "LLAMA_CPP_VERSION=$(cat ./scripts/version.txt) && download https://github.com/ggerganov/llama.cpp/archive/refs/tags/${LLAMA_CPP_VERSION}.tar.gz -o . --filename ./scripts/llama.cpp.tar.gz && tar -xzf ./scripts/llama.cpp.tar.gz --wildcards '*/convert.py' '*/convert-hf-to-gguf.py' '*/gguf-py' && cpx \"./llama.cpp-$LLAMA_CPP_VERSION/**\" \"scripts\" && rimraf \"./scripts/llama.cpp.tar.gz\" && rimraf \"./llama.cpp-$LLAMA_CPP_VERSION\"", + "download:llama:darwin": "LLAMA_CPP_VERSION=$(cat ./scripts/version.txt) && download https://github.com/ggerganov/llama.cpp/archive/refs/tags/${LLAMA_CPP_VERSION}.tar.gz -o . --filename ./scripts/llama.cpp.tar.gz && tar -xzf ./scripts/llama.cpp.tar.gz '*/convert.py' '*/convert-hf-to-gguf.py' '*/gguf-py' && cpx \"./llama.cpp-$LLAMA_CPP_VERSION/**\" \"scripts\" && rimraf \"./scripts/llama.cpp.tar.gz\" && rimraf \"./llama.cpp-$LLAMA_CPP_VERSION\"", + "download:llama:win32": "download.bat", + "build:publish:linux": "rimraf *.tgz --glob && yarn build && yarn download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && npm pack && cpx *.tgz ../../pre-install", + "build:publish:darwin": "rimraf *.tgz --glob && yarn build && yarn download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && ../../.github/scripts/auto-sign.sh && npm pack && cpx *.tgz ../../pre-install", + "build:publish:win32": "rimraf *.tgz --glob && yarn build && yarn download:llama && cpx \"scripts/**\" \"dist/scripts\" && cpx \"bin/**\" \"dist/bin\" && npm pack && cpx *.tgz ../../pre-install", + "build:publish": "run-script-os" }, "devDependencies": { "cpx": "^1.5.0", + "download-cli": "^1.1.1", "rimraf": "^3.0.2", "ts-loader": "^9.5.0", "typescript": "5.3.3", @@ -20,6 +28,7 @@ "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-replace": "^5.0.5", + "@rollup/plugin-typescript": "^11.1.6", "@types/pdf-parse": "^1.1.4", "rollup": "^2.38.5", "rollup-plugin-define": "^1.0.1", @@ -33,6 +42,7 @@ ], "dependencies": { "@janhq/core": "file:../../core", - "path-browserify": "^1.0.1" + "@huggingface/gguf": "^0.0.11", + "python-shell": "^5.0.0" } } diff --git a/extensions/model-extension/rollup.config.ts b/extensions/model-extension/rollup.config.ts index 256b33add..abd12890e 100644 --- a/extensions/model-extension/rollup.config.ts +++ b/extensions/model-extension/rollup.config.ts @@ -20,10 +20,7 @@ export default [ replace({ preventAssignment: true, DEFAULT_MODEL: JSON.stringify(defaultModelJson), - MODULE_PATH: JSON.stringify( - `${packageJson.name}/${packageJson.module}` - ), - VERSION: JSON.stringify(packageJson.version), + NODE: JSON.stringify(`${packageJson.name}/${packageJson.node}`), }), // Allow json resolution json(), diff --git a/extensions/model-extension/scripts/convert-hf-to-gguf.py b/extensions/model-extension/scripts/convert-hf-to-gguf.py new file mode 100755 index 000000000..0d4ea03b4 --- /dev/null +++ b/extensions/model-extension/scripts/convert-hf-to-gguf.py @@ -0,0 +1,1720 @@ +#!/usr/bin/env python3 + +from __future__ import annotations + +import argparse +import contextlib +import json +import os +import re +import sys +from enum import IntEnum +from pathlib import Path +from typing import TYPE_CHECKING, Any, ContextManager, Iterator, cast + +import numpy as np +import torch + +if TYPE_CHECKING: + from torch import Tensor + +if 'NO_LOCAL_GGUF' not in os.environ: + sys.path.insert(1, str(Path(__file__).parent / 'gguf-py')) +import gguf + +from convert import HfVocab + + +# check for any of the given keys in the dictionary and return the value of the first key found +def get_key_opts(d, keys): + for k in keys: + if k in d: + return d[k] + print(f"Could not find any of {keys}") + sys.exit() + + +###### MODEL DEFINITIONS ###### + +class SentencePieceTokenTypes(IntEnum): + NORMAL = 1 + UNKNOWN = 2 + CONTROL = 3 + USER_DEFINED = 4 + UNUSED = 5 + BYTE = 6 + + +class Model: + def __init__(self, dir_model: Path, ftype: int, fname_out: Path, is_big_endian: bool): + self.dir_model = dir_model + self.ftype = ftype + self.fname_out = fname_out + self.is_big_endian = is_big_endian + self.endianess = gguf.GGUFEndian.BIG if is_big_endian else gguf.GGUFEndian.LITTLE + self.is_safetensors = self._is_model_safetensors() + self.num_parts = Model.count_model_parts(self.dir_model, ".safetensors" if self.is_safetensors else ".bin") + self.part_names = self._get_part_names() + self.hparams = Model.load_hparams(self.dir_model) + self.model_arch = self._get_model_architecture() + self.gguf_writer = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[self.model_arch], endianess=self.endianess, use_temp_file=False) + + def set_vocab(self): + self._set_vocab_gpt2() + + def get_tensors(self) -> Iterator[tuple[str, Tensor]]: + for part_name in self.part_names: + print(f"gguf: loading model part '{part_name}'") + ctx: ContextManager[Any] + if self.is_safetensors: + from safetensors import safe_open + ctx = cast(ContextManager[Any], safe_open(self.dir_model / part_name, framework="pt", device="cpu")) + else: + ctx = contextlib.nullcontext(torch.load(str(self.dir_model / part_name), map_location="cpu", mmap=True, weights_only=True)) + + with ctx as model_part: + for name in model_part.keys(): + data = model_part.get_tensor(name) if self.is_safetensors else model_part[name] + yield name, data + + def set_gguf_parameters(self): + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_block_count(self.hparams.get( + "n_layers", self.hparams.get("num_hidden_layers", self.hparams.get("n_layer")), + )) + if (n_ctx := self.hparams.get("max_position_embeddings")) is not None: + self.gguf_writer.add_context_length(n_ctx) + if (n_embd := self.hparams.get("hidden_size")) is not None: + self.gguf_writer.add_embedding_length(n_embd) + if (n_ff := self.hparams.get("intermediate_size")) is not None: + self.gguf_writer.add_feed_forward_length(n_ff) + if (n_head := self.hparams.get("num_attention_heads")) is not None: + self.gguf_writer.add_head_count(n_head) + if (n_head_kv := self.hparams.get("num_key_value_heads")) is not None: + self.gguf_writer.add_head_count_kv(n_head_kv) + + if (n_rms_eps := self.hparams.get("rms_norm_eps")) is not None: + self.gguf_writer.add_layer_norm_rms_eps(n_rms_eps) + if (n_experts := self.hparams.get("num_local_experts")) is not None: + self.gguf_writer.add_expert_count(n_experts) + if (n_experts_used := self.hparams.get("num_experts_per_tok")) is not None: + self.gguf_writer.add_expert_used_count(n_experts_used) + + self.gguf_writer.add_parallel_residual(self.hparams.get("use_parallel_residual", True)) + + def write_tensors(self): + block_count = self.hparams.get("n_layers", self.hparams.get("num_hidden_layers", self.hparams.get("n_layer"))) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + for name, data_torch in self.get_tensors(): + # we don't need these + if name.endswith((".attention.masked_bias", ".attention.bias", ".attention.rotary_emb.inv_freq")): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + def write(self): + self.write_tensors() + self.gguf_writer.write_header_to_file() + self.gguf_writer.write_kv_data_to_file() + self.gguf_writer.write_tensors_to_file() + self.gguf_writer.close() + + def write_vocab(self): + self.gguf_writer.write_header_to_file() + self.gguf_writer.write_kv_data_to_file() + self.gguf_writer.close() + + @staticmethod + def count_model_parts(dir_model: Path, prefix: str) -> int: + num_parts = 0 + for filename in os.listdir(dir_model): + if filename.endswith(prefix): + num_parts += 1 + + return num_parts + + @staticmethod + def load_hparams(dir_model): + with open(dir_model / "config.json", "r", encoding="utf-8") as f: + return json.load(f) + + @staticmethod + def from_model_architecture(model_architecture): + if model_architecture == "GPTNeoXForCausalLM": + return GPTNeoXModel + if model_architecture == "BloomForCausalLM": + return BloomModel + if model_architecture == "MPTForCausalLM": + return MPTModel + if model_architecture in ("BaichuanForCausalLM", "BaiChuanForCausalLM"): + return BaichuanModel + if model_architecture in ("FalconForCausalLM", "RWForCausalLM"): + return FalconModel + if model_architecture == "GPTBigCodeForCausalLM": + return StarCoderModel + if model_architecture == "GPTRefactForCausalLM": + return RefactModel + if model_architecture == "PersimmonForCausalLM": + return PersimmonModel + if model_architecture in ("StableLMEpochForCausalLM", "LlavaStableLMEpochForCausalLM"): + return StableLMModel + if model_architecture == "QWenLMHeadModel": + return QwenModel + if model_architecture == "Qwen2ForCausalLM": + return Model + if model_architecture == "MixtralForCausalLM": + return MixtralModel + if model_architecture == "GPT2LMHeadModel": + return GPT2Model + if model_architecture == "PhiForCausalLM": + return Phi2Model + if model_architecture == "PlamoForCausalLM": + return PlamoModel + if model_architecture == "CodeShellForCausalLM": + return CodeShellModel + if model_architecture == "OrionForCausalLM": + return OrionModel + if model_architecture == "InternLM2ForCausalLM": + return InternLM2Model + if model_architecture == "MiniCPMForCausalLM": + return MiniCPMModel + return Model + + def _is_model_safetensors(self) -> bool: + return Model.count_model_parts(self.dir_model, ".safetensors") > 0 + + def _get_part_names(self): + if self.is_safetensors: + if self.num_parts == 1: # there's only one .safetensors file + return ("model.safetensors",) + return (f"model-{n:05}-of-{self.num_parts:05}.safetensors" for n in range(1, self.num_parts + 1)) + + if self.num_parts == 1: # there's only one .bin file + return ("pytorch_model.bin",) + return (f"pytorch_model-{n:05}-of-{self.num_parts:05}.bin" for n in range(1, self.num_parts + 1)) + + def _get_model_architecture(self) -> gguf.MODEL_ARCH: + arch = self.hparams["architectures"][0] + if arch == "GPTNeoXForCausalLM": + return gguf.MODEL_ARCH.GPTNEOX + if arch == "BloomForCausalLM": + return gguf.MODEL_ARCH.BLOOM + if arch == "MPTForCausalLM": + return gguf.MODEL_ARCH.MPT + if arch in ("BaichuanForCausalLM", "BaiChuanForCausalLM"): + return gguf.MODEL_ARCH.BAICHUAN + if arch in ("FalconForCausalLM", "RWForCausalLM"): + return gguf.MODEL_ARCH.FALCON + if arch == "GPTBigCodeForCausalLM": + return gguf.MODEL_ARCH.STARCODER + if arch == "GPTRefactForCausalLM": + return gguf.MODEL_ARCH.REFACT + if arch == "PersimmonForCausalLM": + return gguf.MODEL_ARCH.PERSIMMON + if arch in ("StableLMEpochForCausalLM", "LlavaStableLMEpochForCausalLM"): + return gguf.MODEL_ARCH.STABLELM + if arch == "QWenLMHeadModel": + return gguf.MODEL_ARCH.QWEN + if arch == "Qwen2ForCausalLM": + return gguf.MODEL_ARCH.QWEN2 + if arch == "MixtralForCausalLM": + return gguf.MODEL_ARCH.LLAMA + if arch == "GPT2LMHeadModel": + return gguf.MODEL_ARCH.GPT2 + if arch == "PhiForCausalLM": + return gguf.MODEL_ARCH.PHI2 + if arch == "PlamoForCausalLM": + return gguf.MODEL_ARCH.PLAMO + if arch == "CodeShellForCausalLM": + return gguf.MODEL_ARCH.CODESHELL + if arch == "OrionForCausalLM": + return gguf.MODEL_ARCH.ORION + if arch == "InternLM2ForCausalLM": + return gguf.MODEL_ARCH.INTERNLM2 + if arch == "MiniCPMForCausalLM": + return gguf.MODEL_ARCH.MINICPM + + raise NotImplementedError(f'Architecture "{arch}" not supported!') + + def _set_vocab_gpt2(self): + dir_model = self.dir_model + hparams = self.hparams + tokens: list[bytearray] = [] + toktypes: list[int] = [] + + from transformers import AutoTokenizer + tokenizer = AutoTokenizer.from_pretrained(dir_model) + vocab_size = hparams.get("vocab_size", len(tokenizer.vocab)) + assert max(tokenizer.vocab.values()) < vocab_size + + reverse_vocab = {id_: encoded_tok for encoded_tok, id_ in tokenizer.vocab.items()} + added_vocab = tokenizer.get_added_vocab() + + for i in range(vocab_size): + if i not in reverse_vocab: + pad_token = f"[PAD{i}]".encode('utf-8') + tokens.append(bytearray(pad_token)) + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) + + self.gguf_writer.add_tokenizer_model("gpt2") + self.gguf_writer.add_token_list(tokens) + self.gguf_writer.add_token_types(toktypes) + + special_vocab = gguf.SpecialVocab(dir_model, load_merges=True) + special_vocab.add_to_gguf(self.gguf_writer) + + def _set_vocab_qwen(self): + dir_model = self.dir_model + hparams = self.hparams + tokens: list[bytearray] = [] + toktypes: list[int] = [] + + from transformers import AutoTokenizer + tokenizer = AutoTokenizer.from_pretrained(dir_model, trust_remote_code=True) + vocab_size = hparams["vocab_size"] + assert max(tokenizer.get_vocab().values()) < vocab_size + + merges = [] + vocab = {} + mergeable_ranks = tokenizer.mergeable_ranks + for token, rank in mergeable_ranks.items(): + vocab[QwenModel.token_bytes_to_string(token)] = rank + if len(token) == 1: + continue + merged = QwenModel.bpe(mergeable_ranks, token, max_rank=rank) + assert len(merged) == 2 + merges.append(' '.join(map(QwenModel.token_bytes_to_string, merged))) + + # for this kind of tokenizer, added_vocab is not a subset of vocab, so they need to be combined + added_vocab = tokenizer.special_tokens + reverse_vocab = {id_ : encoded_tok for encoded_tok, id_ in (vocab | added_vocab).items()} + + for i in range(vocab_size): + if i not in reverse_vocab: + pad_token = f"[PAD{i}]".encode("utf-8") + tokens.append(bytearray(pad_token)) + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.CONTROL) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) + + self.gguf_writer.add_tokenizer_model("gpt2") + self.gguf_writer.add_token_list(tokens) + self.gguf_writer.add_token_types(toktypes) + + special_vocab = gguf.SpecialVocab(dir_model, load_merges=False) + special_vocab.merges = merges + # only add special tokens when they were not already loaded from config.json + if len(special_vocab.special_token_ids) == 0: + special_vocab._set_special_token("bos", tokenizer.special_tokens["<|endoftext|>"]) + special_vocab._set_special_token("eos", tokenizer.special_tokens["<|endoftext|>"]) + # this one is usually not in config.json anyway + special_vocab._set_special_token("unk", tokenizer.special_tokens["<|endoftext|>"]) + special_vocab.add_to_gguf(self.gguf_writer) + + def _set_vocab_sentencepiece(self): + from sentencepiece import SentencePieceProcessor + + tokenizer_path = self.dir_model / 'tokenizer.model' + + tokens: list[bytes] = [] + scores: list[float] = [] + toktypes: list[int] = [] + + if not tokenizer_path.is_file(): + print(f'Error: Missing {tokenizer_path}', file=sys.stderr) + sys.exit(1) + + tokenizer = SentencePieceProcessor(str(tokenizer_path)) + vocab_size = self.hparams.get('vocab_size', tokenizer.vocab_size()) + + for token_id in range(vocab_size): + piece = tokenizer.id_to_piece(token_id) + text = piece.encode("utf-8") + score = tokenizer.get_score(token_id) + + toktype = SentencePieceTokenTypes.NORMAL + if tokenizer.is_unknown(token_id): + toktype = SentencePieceTokenTypes.UNKNOWN + elif tokenizer.is_control(token_id): + toktype = SentencePieceTokenTypes.CONTROL + elif tokenizer.is_unused(token_id): + toktype = SentencePieceTokenTypes.UNUSED + elif tokenizer.is_byte(token_id): + toktype = SentencePieceTokenTypes.BYTE + + tokens.append(text) + scores.append(score) + toktypes.append(toktype) + + added_tokens_file = self.dir_model / 'added_tokens.json' + if added_tokens_file.is_file(): + with open(added_tokens_file, "r", encoding="utf-8") as f: + added_tokens_json = json.load(f) + + for key in added_tokens_json: + tokens.append(key.encode("utf-8")) + scores.append(-1000.0) + toktypes.append(SentencePieceTokenTypes.USER_DEFINED) + + self.gguf_writer.add_tokenizer_model("llama") + self.gguf_writer.add_token_list(tokens) + self.gguf_writer.add_token_scores(scores) + self.gguf_writer.add_token_types(toktypes) + + special_vocab = gguf.SpecialVocab(self.dir_model, n_vocab=len(tokens)) + special_vocab.add_to_gguf(self.gguf_writer) + + def _set_vocab_hf(self): + path = self.dir_model + added_tokens_path = self.dir_model + vocab = HfVocab( + path, added_tokens_path if added_tokens_path.exists() else None + ) + tokens = [] + scores = [] + toktypes = [] + + for text, score, toktype in vocab.all_tokens(): + tokens.append(text) + scores.append(score) + toktypes.append(toktype) + + assert len(tokens) == vocab.vocab_size + + self.gguf_writer.add_tokenizer_model("llama") + self.gguf_writer.add_token_list(tokens) + self.gguf_writer.add_token_scores(scores) + self.gguf_writer.add_token_types(toktypes) + + special_vocab = gguf.SpecialVocab(self.dir_model, n_vocab=len(tokens)) + special_vocab.add_to_gguf(self.gguf_writer) + + +class GPTNeoXModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams["num_hidden_layers"] + + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_context_length(self.hparams["max_position_embeddings"]) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_rope_dimension_count( + int(self.hparams["rotary_pct"] * (self.hparams["hidden_size"] // self.hparams["num_attention_heads"])), + ) + self.gguf_writer.add_head_count(self.hparams["num_attention_heads"]) + self.gguf_writer.add_parallel_residual(self.hparams.get("use_parallel_residual", True)) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_eps"]) + + +class BloomModel(Model): + def set_gguf_parameters(self): + self.gguf_writer.add_name("Bloom") + n_embed = self.hparams.get("hidden_size", self.hparams.get("n_embed")) + n_head = self.hparams.get("n_head", self.hparams.get("num_attention_heads")) + self.gguf_writer.add_context_length(self.hparams.get("seq_length", n_embed)) + self.gguf_writer.add_embedding_length(n_embed) + self.gguf_writer.add_feed_forward_length(4 * n_embed) + self.gguf_writer.add_block_count(self.hparams["n_layer"]) + self.gguf_writer.add_head_count(n_head) + self.gguf_writer.add_head_count_kv(n_head) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + + def write_tensors(self): + block_count = self.hparams["n_layer"] + tensors = dict(self.get_tensors()) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + has_lm_head = True + n_head = self.hparams.get("n_head", self.hparams.get("num_attention_heads")) + n_embed = self.hparams.get("hidden_size", self.hparams.get("n_embed")) + + for name, data_torch in tensors.items(): + if "lm_head.weight" not in tensors.keys() and "output.weight" not in tensors.keys(): + has_lm_head = False + + name = re.sub(r'transformer\.', '', name) + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + if re.match(r"h\.\d+\.self_attention\.query_key_value\.weight", name): + # Map bloom-style qkv_linear to gpt-style qkv_linear + # bloom: https://github.com/huggingface/transformers/blob/main/src/transformers/models/bloom/modeling_bloom.py#L238-L252 # noqa + # gpt-2: https://github.com/huggingface/transformers/blob/main/src/transformers/models/gpt2/modeling_gpt2.py#L312 # noqa + qkv_weights = data.reshape((n_head, 3, n_embed // n_head, n_embed)) + data = np.concatenate( + ( + qkv_weights[:, 0, :, :].reshape((-1, n_embed)), + qkv_weights[:, 1, :, :].reshape((-1, n_embed)), + qkv_weights[:, 2, :, :].reshape((-1, n_embed)), + ), + axis=0, + ) + print("re-format attention.linear_qkv.weight") + elif re.match(r"h\.\d+\.self_attention\.query_key_value\.bias", name): + qkv_bias = data.reshape((n_head, 3, n_embed // n_head)) + data = np.concatenate( + ( + qkv_bias[:, 0, :].reshape((n_embed,)), + qkv_bias[:, 1, :].reshape((n_embed,)), + qkv_bias[:, 2, :].reshape((n_embed,)), + ), + axis=0, + ) + print("re-format attention.linear_qkv.bias") + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"=> {new_name}, shape = {data.shape}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + if not has_lm_head and name == "word_embeddings.weight": + self.gguf_writer.add_tensor("output.weight", data) + print(name, f"=> output.weight, shape = {data.shape}, {old_dtype} --> {data.dtype}") + + +class MPTModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams["n_layers"] + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_context_length(self.hparams["max_seq_len"]) + self.gguf_writer.add_embedding_length(self.hparams["d_model"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(4 * self.hparams["d_model"]) + self.gguf_writer.add_head_count(self.hparams["n_heads"]) + if kv_n_heads := self.hparams["attn_config"].get("kv_n_heads"): + self.gguf_writer.add_head_count_kv(kv_n_heads) + self.gguf_writer.add_layer_norm_eps(1e-5) + if self.hparams["attn_config"]["clip_qkv"] is not None: + self.gguf_writer.add_clamp_kqv(self.hparams["attn_config"]["clip_qkv"]) + self.gguf_writer.add_max_alibi_bias(self.hparams["attn_config"]["alibi_bias_max"]) + + def write_tensors(self): + block_count = self.hparams.get("n_layers", self.hparams.get("num_hidden_layers")) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + for name, data_torch in self.get_tensors(): + # we don't need these + if name.endswith((".attention.masked_bias", ".attention.bias", ".attention.rotary_emb.inv_freq")): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + if "scales" in name: + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias", ".scales")) + if new_name is not None: + new_name = new_name.replace("scales", "act.scales") + else: + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + # note: MPT output is tied to (same as) wte in original model; + # for easier implementation in llama.cpp it's duplicated in GGUF, though :/ + if new_name == "token_embd.weight": + self.gguf_writer.add_tensor("output.weight", data) + + +class OrionModel(Model): + def set_vocab(self): + self._set_vocab_sentencepiece() + + def set_gguf_parameters(self): + block_count = self.hparams["num_hidden_layers"] + head_count = self.hparams["num_attention_heads"] + head_count_kv = self.hparams.get("num_key_value_heads", head_count) + hf_repo = self.hparams.get("_name_or_path", "") + + ctx_length = 0 + if "max_sequence_length" in self.hparams: + ctx_length = self.hparams["max_sequence_length"] + elif "max_position_embeddings" in self.hparams: + ctx_length = self.hparams["max_position_embeddings"] + elif "model_max_length" in self.hparams: + ctx_length = self.hparams["model_max_length"] + else: + print("gguf: can not find ctx length parameter.") + sys.exit() + + self.gguf_writer.add_file_type(self.ftype) + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_source_hf_repo(hf_repo) + self.gguf_writer.add_tensor_data_layout("Meta AI original pth") + self.gguf_writer.add_context_length(ctx_length) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_head_count(head_count) + self.gguf_writer.add_head_count_kv(head_count_kv) + self.gguf_writer.add_layer_norm_eps(self.hparams["rms_norm_eps"]) + + def write_tensors(self): + # Collect tensors from generator object + model_kv = dict(self.get_tensors()) + block_count = self.hparams["num_hidden_layers"] + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + for name, data_torch in model_kv.items(): + # we don't need these + if name.endswith(".rotary_emb.inv_freq"): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{name} -> {new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor(new_name, data) + + +class BaichuanModel(Model): + def set_vocab(self): + self._set_vocab_sentencepiece() + + def set_gguf_parameters(self): + block_count = self.hparams["num_hidden_layers"] + head_count = self.hparams["num_attention_heads"] + head_count_kv = self.hparams.get("num_key_value_heads", head_count) + hf_repo = self.hparams.get("_name_or_path", "") + + ctx_length = 0 + if "max_sequence_length" in self.hparams: + ctx_length = self.hparams["max_sequence_length"] + elif "max_position_embeddings" in self.hparams: + ctx_length = self.hparams["max_position_embeddings"] + elif "model_max_length" in self.hparams: + ctx_length = self.hparams["model_max_length"] + else: + print("gguf: can not find ctx length parameter.") + sys.exit() + + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_source_hf_repo(hf_repo) + self.gguf_writer.add_tensor_data_layout("Meta AI original pth") + self.gguf_writer.add_context_length(ctx_length) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_rope_dimension_count(self.hparams["hidden_size"] // self.hparams["num_attention_heads"]) + self.gguf_writer.add_head_count(head_count) + self.gguf_writer.add_head_count_kv(head_count_kv) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["rms_norm_eps"]) + + if self.hparams.get("rope_scaling") is not None and "factor" in self.hparams["rope_scaling"]: + if self.hparams["rope_scaling"].get("type") == "linear": + self.gguf_writer.add_rope_scaling_type(gguf.RopeScalingType.LINEAR) + self.gguf_writer.add_rope_scaling_factor(self.hparams["rope_scaling"]["factor"]) + + def write_tensors(self): + # Collect tensors from generator object + model_kv = dict(self.get_tensors()) + block_count = self.hparams["num_hidden_layers"] + head_count = self.hparams["num_attention_heads"] + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + head_count_kv = self.hparams.get("num_key_value_heads", head_count) + + for i in range(block_count): + if (w := model_kv.get(f"model.layers.{i}.self_attn.W_pack.weight")) is not None: + print(f"Unpacking and permuting layer {i}") + model_kv[f"model.layers.{i}.self_attn.q_proj.weight"] = \ + self._reverse_hf_permute_part(w, 0, head_count, head_count) + model_kv[f"model.layers.{i}.self_attn.k_proj.weight"] = \ + self._reverse_hf_permute_part(w, 1, head_count, head_count_kv) + model_kv[f"model.layers.{i}.self_attn.v_proj.weight"] = \ + self._reverse_hf_part(w, 2) + del model_kv[f"model.layers.{i}.self_attn.W_pack.weight"] + + for name, data_torch in model_kv.items(): + # we don't need these + if name.endswith(".rotary_emb.inv_freq"): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{name} -> {new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor(new_name, data) + + def _reverse_hf_permute(self, weights: Tensor, n_head: int, n_kv_head: int | None = None) -> Tensor: + if n_kv_head is not None and n_head != n_kv_head: + n_head //= n_kv_head + + return ( + weights.reshape(n_head, 2, weights.shape[0] // n_head // 2, *weights.shape[1:]) + .swapaxes(1, 2) + .reshape(weights.shape) + ) + + def _reverse_hf_permute_part( + self, weights: Tensor, n_part: int, n_head: int, n_head_kv: int | None = None, + ) -> Tensor: + r = weights.shape[0] // 3 + return self._reverse_hf_permute(weights[r * n_part:r * n_part + r, ...], n_head, n_head_kv) + + def _reverse_hf_part(self, weights: Tensor, n_part: int) -> Tensor: + r = weights.shape[0] // 3 + return weights[r * n_part:r * n_part + r, ...] + + +class FalconModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams.get("num_hidden_layers") + if block_count is None: + block_count = self.hparams["n_layer"] # old name + + n_head = self.hparams.get("num_attention_heads") + if n_head is None: + n_head = self.hparams["n_head"] # old name + + n_head_kv = self.hparams.get("num_kv_heads") + if n_head_kv is None: + n_head_kv = self.hparams.get("n_head_kv", 1) # old name + + self.gguf_writer.add_name("Falcon") + self.gguf_writer.add_context_length(2048) # not in config.json + self.gguf_writer.add_tensor_data_layout("jploski") # qkv tensor transform + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_feed_forward_length(4 * self.hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(n_head) + self.gguf_writer.add_head_count_kv(n_head_kv) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + + def write_tensors(self): + block_count = self.hparams.get("num_hidden_layers") + if block_count is None: + block_count = self.hparams["n_layer"] # old name + + n_head = self.hparams.get("num_attention_heads") + if n_head is None: + n_head = self.hparams["n_head"] # old name + + n_head_kv = self.hparams.get("num_kv_heads") + if n_head_kv is None: + n_head_kv = self.hparams.get("n_head_kv", 1) # old name + + head_dim = self.hparams["hidden_size"] // n_head + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + for name, data_torch in self.get_tensors(): + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + # QKV tensor transform + # The original query_key_value tensor contains n_head_kv "kv groups", + # each consisting of n_head/n_head_kv query weights followed by one key + # and one value weight (shared by all query heads in the kv group). + # This layout makes it a big pain to work with in GGML. + # So we rearrange them here,, so that we have n_head query weights + # followed by n_head_kv key weights followed by n_head_kv value weights, + # in contiguous fashion. + # ref: https://github.com/jploski/ggml/blob/falcon40b/examples/falcon/convert-hf-to-ggml.py + + if "query_key_value" in name: + qkv = data_torch.view(n_head_kv, n_head // n_head_kv + 2, head_dim, head_dim * n_head) + q = qkv[:, :-2].reshape(n_head * head_dim, head_dim * n_head) + k = qkv[:, [-2]].reshape(n_head_kv * head_dim, head_dim * n_head) + v = qkv[:, [-1]].reshape(n_head_kv * head_dim, head_dim * n_head) + data_torch = torch.cat((q, k, v)).reshape_as(data_torch) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + +class StarCoderModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams["n_layer"] + + self.gguf_writer.add_name("StarCoder") + self.gguf_writer.add_context_length(self.hparams["n_positions"]) + self.gguf_writer.add_embedding_length(self.hparams["n_embd"]) + self.gguf_writer.add_feed_forward_length(4 * self.hparams["n_embd"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(self.hparams["n_head"]) + self.gguf_writer.add_head_count_kv(1) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + + +class RefactModel(Model): + def set_gguf_parameters(self): + hidden_dim = self.hparams["n_embd"] + inner_dim = 4 * hidden_dim + hidden_dim = int(2 * inner_dim / 3) + multiple_of = 256 + ff_dim = multiple_of * ((hidden_dim + multiple_of - 1) // multiple_of) + + block_count = self.hparams["n_layer"] + + self.gguf_writer.add_name("Refact") + # refact uses Alibi. So this is from config.json which might be used by training. + self.gguf_writer.add_context_length(self.hparams["n_positions"]) + self.gguf_writer.add_embedding_length(self.hparams["n_embd"]) + + self.gguf_writer.add_feed_forward_length(ff_dim) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(self.hparams["n_head"]) + self.gguf_writer.add_head_count_kv(1) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + + def write_tensors(self): + hidden_dim = self.hparams["n_embd"] + inner_dim = 4 * hidden_dim + hidden_dim = int(2 * inner_dim / 3) + multiple_of = 256 + ff_dim = multiple_of * ((hidden_dim + multiple_of - 1) // multiple_of) + n_head = self.hparams["n_head"] + n_head_kv = 1 + head_dim = self.hparams["n_embd"] // n_head + block_count = self.hparams["n_layer"] + + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + tensors = dict(self.get_tensors()) + for i in range(block_count): + if (w := tensors.get(f"transformer.h.{i}.attn.kv.weight")) is not None: + tensors[f"model.layers.{i}.self_attn.k_proj.weight"] = w[:n_head_kv * head_dim] + tensors[f"model.layers.{i}.self_attn.v_proj.weight"] = w[n_head_kv * head_dim:] + del tensors[f"transformer.h.{i}.attn.kv.weight"] + if (w := tensors.get(f"transformer.h.{i}.attn.q.weight")) is not None: + tensors[f"model.layers.{i}.self_attn.q_proj.weight"] = w + del tensors[f"transformer.h.{i}.attn.q.weight"] + if (w := tensors.get(f"transformer.h.{i}.mlp.gate_up_proj.weight")) is not None: + tensors[f"model.layers.{i}.mlp.gate_proj.weight"] = w[:ff_dim] + tensors[f"model.layers.{i}.mlp.up_proj.weight"] = w[ff_dim:] + del tensors[f"transformer.h.{i}.mlp.gate_up_proj.weight"] + + for name, data_torch in tensors.items(): + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight",)) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + +class PersimmonModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams.get("num_layers", self.hparams.get("num_hidden_layers")) + head_count = self.hparams["num_attention_heads"] + head_count_kv = head_count + hidden_size = self.hparams["hidden_size"] + + self.gguf_writer.add_name('persimmon-8b-chat') + self.gguf_writer.add_context_length(self.hparams["max_position_embeddings"]) + self.gguf_writer.add_embedding_length(hidden_size) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + + # NOTE: not sure about this change - why does the model not have a rope dimension count when it is smaller + # than the head size? + # ref: https://github.com/ggerganov/llama.cpp/pull/4889 + # self.gguf_writer.add_rope_dimension_count(hidden_size // head_count) + self.gguf_writer.add_rope_dimension_count(hidden_size // head_count // 2) + + self.gguf_writer.add_head_count(head_count) + self.gguf_writer.add_head_count_kv(head_count_kv) + self.gguf_writer.add_rope_freq_base(self.hparams["rope_theta"]) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_eps"]) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["rms_norm_eps"]) + + def set_vocab(self): + self._set_vocab_sentencepiece() + # self.gguf_writer.add_bos_token_id(71013) + # self.gguf_writer.add_eos_token_id(71013) + + def write_tensors(self): + block_count = self.hparams.get("num_layers", self.hparams.get("num_hidden_layers")) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + for name, data_torch in self.get_tensors(): + if name.endswith(".self_attention.rotary_emb.inv_freq"): + continue + old_dtype = data_torch.dtype + # TODO: FP16 conversion produces garbage outputs. (Q8_0 does not, so..?) + data = data_torch.to(torch.float32).squeeze().numpy() + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + n_dims = len(data.shape) + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor(new_name, data) + + +class StableLMModel(Model): + def set_vocab(self): + if (self.dir_model / "tokenizer.json").is_file(): + self._set_vocab_gpt2() + else: + # StableLM 2 1.6B uses a vocab in a similar format to Qwen's vocab + self._set_vocab_qwen() + + def set_gguf_parameters(self): + hparams = self.hparams + block_count = hparams["num_hidden_layers"] + + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_context_length(hparams["max_position_embeddings"]) + self.gguf_writer.add_embedding_length(hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(hparams["intermediate_size"]) + self.gguf_writer.add_rope_dimension_count(int(hparams["rope_pct"] * (hparams["hidden_size"] // hparams["num_attention_heads"]))) + self.gguf_writer.add_head_count(hparams["num_attention_heads"]) + self.gguf_writer.add_parallel_residual(hparams["use_parallel_residual"] if "use_parallel_residual" in hparams else True) + self.gguf_writer.add_layer_norm_eps(1e-5) + + +class MixtralModel(Model): + def set_vocab(self): + self._set_vocab_sentencepiece() + + +class MiniCPMModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams["num_hidden_layers"] + self.gguf_writer.add_name("MiniCPM") + self.gguf_writer.add_context_length(self.hparams["max_position_embeddings"]) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_rope_dimension_count(self.hparams["hidden_size"] // self.hparams["num_attention_heads"]) + self.gguf_writer.add_head_count(self.hparams["num_attention_heads"]) + self.gguf_writer.add_head_count_kv(self.hparams["num_key_value_heads"]) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["rms_norm_eps"]) + self.gguf_writer.add_file_type(self.ftype) + + def set_vocab(self): + self._set_vocab_hf() + + def _reverse_hf_permute(self, weights: Tensor, n_head: int, n_kv_head: int | None = None) -> Tensor: + if n_kv_head is not None and n_head != n_kv_head: + n_head //= n_kv_head + + return ( + weights.reshape(n_head, 2, weights.shape[0] // n_head // 2, *weights.shape[1:]) + .swapaxes(1, 2) + .reshape(weights.shape) + ) + + def write_tensors(self): + block_count = self.hparams.get("n_layers", self.hparams.get("num_hidden_layers", self.hparams.get("n_layer"))) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + n_head = self.hparams.get("num_attention_heads") + n_kv_head = self.hparams.get("num_key_value_heads") + for name, data_torch in self.get_tensors(): + # we don't need these + if name.endswith((".attention.masked_bias", ".attention.bias", ".attention.rotary_emb.inv_freq")): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + # HF models permute some of the tensors, so we need to undo that + if name.endswith(("q_proj.weight")): + data_torch = self._reverse_hf_permute(data_torch, n_head, n_head) + if name.endswith(("k_proj.weight")): + data_torch = self._reverse_hf_permute(data_torch, n_head, n_kv_head) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + +class QwenModel(Model): + @staticmethod + def token_bytes_to_string(b): + from transformers.models.gpt2.tokenization_gpt2 import bytes_to_unicode + byte_encoder = bytes_to_unicode() + return ''.join([byte_encoder[ord(char)] for char in b.decode('latin-1')]) + + @staticmethod + def bpe(mergeable_ranks: dict[bytes, int], token: bytes, max_rank: int | None = None) -> list[bytes]: + parts = [bytes([b]) for b in token] + while True: + min_idx = None + min_rank = None + for i, pair in enumerate(zip(parts[:-1], parts[1:])): + rank = mergeable_ranks.get(pair[0] + pair[1]) + if rank is not None and (min_rank is None or rank < min_rank): + min_idx = i + min_rank = rank + if min_rank is None or (max_rank is not None and min_rank >= max_rank): + break + assert min_idx is not None + parts = parts[:min_idx] + [parts[min_idx] + parts[min_idx + 1]] + parts[min_idx + 2:] + return parts + + def set_vocab(self): + self._set_vocab_qwen() + + def set_gguf_parameters(self): + self.gguf_writer.add_name("Qwen") + self.gguf_writer.add_context_length(self.hparams["max_position_embeddings"]) + self.gguf_writer.add_block_count(self.hparams["num_hidden_layers"]) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_rope_freq_base(self.hparams["rotary_emb_base"]) + self.gguf_writer.add_rope_dimension_count(self.hparams["hidden_size"] // self.hparams["num_attention_heads"]) + self.gguf_writer.add_head_count(self.hparams["num_attention_heads"]) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["layer_norm_epsilon"]) + + def write_tensors(self): + block_count = self.hparams["num_hidden_layers"] + model_kv = dict(self.get_tensors()) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + for name, data_torch in model_kv.items(): + # we don't need these + if name.endswith(".rotary_emb.inv_freq"): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor(new_name, data) + + +class GPT2Model(Model): + def set_gguf_parameters(self): + self.gguf_writer.add_name(self.dir_model.name) + self.gguf_writer.add_block_count(self.hparams["n_layer"]) + self.gguf_writer.add_context_length(self.hparams["n_ctx"]) + self.gguf_writer.add_embedding_length(self.hparams["n_embd"]) + self.gguf_writer.add_feed_forward_length(4 * self.hparams["n_embd"]) + self.gguf_writer.add_head_count(self.hparams["n_head"]) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + + def write_tensors(self): + block_count = self.hparams.get("n_layers", self.hparams.get("num_hidden_layers", self.hparams.get("n_layer"))) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + for name, data_torch in self.get_tensors(): + # we don't need these + if name.endswith((".attention.masked_bias", ".attention.bias", ".attention.rotary_emb.inv_freq", ".attn.bias", ".attn.masked_bias")): + continue + + if name.endswith((".c_attn.weight", ".c_proj.weight", ".c_fc.weight", ".c_proj.weight")): + data_torch = data_torch.transpose(1, 0) + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + # note: GPT2 output is tied to (same as) wte in original model + if new_name == "token_embd.weight": + print(f"output.weight, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor("output.weight", data) + + +class Phi2Model(Model): + def set_gguf_parameters(self): + block_count = get_key_opts(self.hparams, ["num_hidden_layers", "n_layer"]) + + rot_pct = get_key_opts(self.hparams, ["partial_rotary_factor"]) + n_embd = get_key_opts(self.hparams, ["hidden_size", "n_embd"]) + n_head = get_key_opts(self.hparams, ["num_attention_heads", "n_head"]) + + self.gguf_writer.add_name("Phi2") + self.gguf_writer.add_context_length(get_key_opts(self.hparams, ["n_positions", "max_position_embeddings"])) + + self.gguf_writer.add_embedding_length(n_embd) + self.gguf_writer.add_feed_forward_length(4 * n_embd) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(n_head) + self.gguf_writer.add_head_count_kv(n_head) + self.gguf_writer.add_layer_norm_eps(get_key_opts(self.hparams, ["layer_norm_epsilon", "layer_norm_eps"])) + self.gguf_writer.add_rope_dimension_count(int(rot_pct * n_embd) // n_head) + self.gguf_writer.add_file_type(self.ftype) + self.gguf_writer.add_add_bos_token(False) + + +class PlamoModel(Model): + def set_vocab(self): + self._set_vocab_sentencepiece() + + def set_gguf_parameters(self): + hparams = self.hparams + block_count = hparams["num_hidden_layers"] + + self.gguf_writer.add_name("PLaMo") + self.gguf_writer.add_context_length(4096) # not in config.json + self.gguf_writer.add_embedding_length(hparams["hidden_size"]) + self.gguf_writer.add_feed_forward_length(hparams["intermediate_size"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(hparams["num_attention_heads"]) + self.gguf_writer.add_head_count_kv(5) # hparams["num_key_value_heads"]) is wrong + self.gguf_writer.add_layer_norm_rms_eps(hparams["rms_norm_eps"]) + + def shuffle_attn_q_weight(self, data_torch): + assert data_torch.size() == (5120, 5120) + data_torch = data_torch.reshape(8, 5, 128, 5120) + data_torch = torch.permute(data_torch, (1, 0, 2, 3)) + data_torch = torch.reshape(data_torch, (5120, 5120)) + return data_torch + + def shuffle_attn_output_weight(self, data_torch): + assert data_torch.size() == (5120, 5120) + data_torch = data_torch.reshape(5120, 8, 5, 128) + data_torch = torch.permute(data_torch, (0, 2, 1, 3)) + data_torch = torch.reshape(data_torch, (5120, 5120)) + return data_torch + + def write_tensors(self): + block_count = self.hparams.get("num_layers", self.hparams.get("num_hidden_layers")) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + + for name, data_torch in self.get_tensors(): + if "self_attn.rotary_emb.inv_freq" in name: + continue + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + # shuffle for broadcasting of gqa in ggml_mul_mat + if new_name.endswith("attn_q.weight"): + data_torch = self.shuffle_attn_q_weight(data_torch) + elif new_name.endswith("attn_output.weight"): + data_torch = self.shuffle_attn_output_weight(data_torch) + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + +class CodeShellModel(Model): + def set_gguf_parameters(self): + block_count = self.hparams["n_layer"] + + self.gguf_writer.add_name("CodeShell") + self.gguf_writer.add_context_length(self.hparams["n_positions"]) + self.gguf_writer.add_embedding_length(self.hparams["n_embd"]) + self.gguf_writer.add_feed_forward_length(4 * self.hparams["n_embd"]) + self.gguf_writer.add_block_count(block_count) + self.gguf_writer.add_head_count(self.hparams["n_head"]) + self.gguf_writer.add_head_count_kv(self.hparams["num_query_groups"]) + self.gguf_writer.add_layer_norm_eps(self.hparams["layer_norm_epsilon"]) + self.gguf_writer.add_file_type(self.ftype) + self.gguf_writer.add_rope_freq_base(10000.0) + self.gguf_writer.add_rope_scaling_type(gguf.RopeScalingType.LINEAR) + self.gguf_writer.add_rope_scaling_factor(1.0) + + def write_tensors(self): + block_count = self.hparams.get("n_layers", self.hparams.get("num_hidden_layers", self.hparams.get("n_layer"))) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + tensors = dict(self.get_tensors()) + has_lm_head = "lm_head.weight" in tensors.keys() or "output.weight" in tensors.keys() + for name, data_torch in tensors.items(): + # we don't need these + if name.endswith((".attn.rotary_emb.inv_freq")): + continue + + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + + self.gguf_writer.add_tensor(new_name, data) + + if not has_lm_head and name == "transformer.wte.weight": + self.gguf_writer.add_tensor("output.weight", data) + print(name, f"=> output.weight, shape = {data.shape}, {old_dtype} --> {data.dtype}") + + +class InternLM2Model(Model): + def set_vocab(self): + # (TODO): Is there a better way? + # Copy from _set_vocab_sentencepiece, The only difference is that we will treat the character + # \x00 specially and convert it into an emoji character to prevent it from being mistakenly + # recognized as an empty string in C++. + from sentencepiece import SentencePieceProcessor + from sentencepiece import sentencepiece_model_pb2 as model + + tokenizer_path = self.dir_model / 'tokenizer.model' + + tokens: list[bytes] = [] + scores: list[float] = [] + toktypes: list[int] = [] + + if not tokenizer_path.is_file(): + print(f'Error: Missing {tokenizer_path}', file=sys.stderr) + sys.exit(1) + + sentencepiece_model = model.ModelProto() + sentencepiece_model.ParseFromString(open(tokenizer_path, "rb").read()) + add_prefix = sentencepiece_model.normalizer_spec.add_dummy_prefix + + tokenizer = SentencePieceProcessor(str(tokenizer_path)) + vocab_size = self.hparams.get('vocab_size', tokenizer.vocab_size()) + + for token_id in range(vocab_size): + piece = tokenizer.id_to_piece(token_id) + text = piece.encode("utf-8") + score = tokenizer.get_score(token_id) + if text == b"\x00": + # (TODO): fixme + # Hack here and replace the \x00 characters. + print(f"InternLM2 convert token '{text}' to '🐉'!") + text = "🐉" + + toktype = SentencePieceTokenTypes.NORMAL + if tokenizer.is_unknown(token_id): + toktype = SentencePieceTokenTypes.UNKNOWN + elif tokenizer.is_control(token_id): + toktype = SentencePieceTokenTypes.CONTROL + elif tokenizer.is_unused(token_id): + toktype = SentencePieceTokenTypes.UNUSED + elif tokenizer.is_byte(token_id): + toktype = SentencePieceTokenTypes.BYTE + + tokens.append(text) + scores.append(score) + toktypes.append(toktype) + + added_tokens_file = self.dir_model / 'added_tokens.json' + if added_tokens_file.is_file(): + with open(added_tokens_file, "r", encoding="utf-8") as f: + added_tokens_json = json.load(f) + + for key in added_tokens_json: + tokens.append(key.encode("utf-8")) + scores.append(-1000.0) + toktypes.append(SentencePieceTokenTypes.USER_DEFINED) + + self.gguf_writer.add_tokenizer_model("llama") + self.gguf_writer.add_token_list(tokens) + self.gguf_writer.add_token_scores(scores) + self.gguf_writer.add_token_types(toktypes) + self.gguf_writer.add_add_space_prefix(add_prefix) + + special_vocab = gguf.SpecialVocab(self.dir_model, n_vocab=len(tokens)) + old_eos = special_vocab.special_token_ids["eos"] + if "chat" in os.path.basename(self.dir_model.absolute()): + # For the chat model, we replace the eos with '<|im_end|>'. + special_vocab.special_token_ids["eos"] = self._try_get_sft_eos(tokenizer) + print(f"Replace eos:{old_eos} with a special token:{special_vocab.special_token_ids['eos']} \ +in chat mode so that the conversation can end normally.") + + special_vocab.add_to_gguf(self.gguf_writer) + + def _try_get_sft_eos(self, tokenizer): + unused_145_list = tokenizer.encode('[UNUSED_TOKEN_145]') + im_end_list = tokenizer.encode('<|im_end|>') + assert (len(unused_145_list) == 1) ^ (len(im_end_list) == 1) + if len(unused_145_list) == 1: + eos_token = unused_145_list[0] + if len(im_end_list) == 1: + eos_token = im_end_list[0] + return eos_token + + def _hf_permute_qk(self, weights, n_head: int, n_head_kv: int): + if n_head_kv is not None and n_head != n_head_kv: + n_head = n_head_kv + return (weights.reshape(n_head, 2, weights.shape[0] // n_head // 2, *weights.shape[1:]) + .swapaxes(1, 2) + .reshape(weights.shape)) + + def set_gguf_parameters(self): + self.gguf_writer.add_name("InternLM2") + self.gguf_writer.add_context_length(self.hparams["max_position_embeddings"]) + self.gguf_writer.add_block_count(self.hparams["num_hidden_layers"]) + self.gguf_writer.add_embedding_length(self.hparams["hidden_size"]) + self.gguf_writer.add_feed_forward_length(self.hparams["intermediate_size"]) + self.gguf_writer.add_rope_freq_base(self.hparams["rope_theta"]) + self.gguf_writer.add_head_count(self.hparams["num_attention_heads"]) + self.gguf_writer.add_layer_norm_rms_eps(self.hparams["rms_norm_eps"]) + self.gguf_writer.add_head_count_kv(self.hparams["num_key_value_heads"]) + + def post_write_tensors(self, tensor_map, name, data_torch): + old_dtype = data_torch.dtype + + # convert any unsupported data types to float32 + if data_torch.dtype not in (torch.float16, torch.float32): + data_torch = data_torch.to(torch.float32) + + data = data_torch.squeeze().numpy() + + # map tensor names + new_name = tensor_map.get_name(name, try_suffixes=(".weight", ".bias")) + if new_name is None: + print(f"Can not map tensor {name!r}") + sys.exit() + + n_dims = len(data.shape) + data_dtype = data.dtype + + # if f32 desired, convert any float16 to float32 + if self.ftype == 0 and data_dtype == np.float16: + data = data.astype(np.float32) + + # TODO: Why cant we use these float16 as-is? There should be not reason to store float16 as float32 + if self.ftype == 1 and data_dtype == np.float16 and n_dims == 1: + data = data.astype(np.float32) + + # if f16 desired, convert any float32 2-dim weight tensors to float16 + if self.ftype == 1 and data_dtype == np.float32 and name.endswith(".weight") and n_dims == 2: + data = data.astype(np.float16) + + print(f"{new_name}, n_dims = {n_dims}, {old_dtype} --> {data.dtype}") + self.gguf_writer.add_tensor(new_name, data) + + def write_tensors(self): + from einops import rearrange + + num_heads = self.hparams.get("num_attention_heads") + num_kv_heads = self.hparams.get("num_key_value_heads") + hidden_size = self.hparams.get("hidden_size") + q_per_kv = num_heads // num_kv_heads + head_dim = hidden_size // num_heads + num_groups = num_heads // q_per_kv + + block_count = self.hparams["num_hidden_layers"] + model_kv = dict(self.get_tensors()) + tensor_map = gguf.get_tensor_name_map(self.model_arch, block_count) + qkv_pattern = r"model\.layers\.(\d+)\.attention\.wqkv" + for name, data_torch in model_kv.items(): + # we don't need these + if name.endswith(".rotary_emb.inv_freq"): + continue + + if re.match(qkv_pattern, name): + bid = re.findall(qkv_pattern, name)[0] + qkv = data_torch + qkv = rearrange(qkv.T, " o (g n i) ->o g n i", g=num_groups, n=q_per_kv + 2, i=head_dim) + q, k, v = qkv[..., : q_per_kv, :], qkv[..., q_per_kv: q_per_kv + 1, :], qkv[..., q_per_kv + 1: q_per_kv + 2, :] + # The model weights of q and k equire additional reshape. + q = self._hf_permute_qk(rearrange(q, " o g n i -> o (g n i)").T, num_heads, num_heads) + k = self._hf_permute_qk(rearrange(k, " o g n i -> o (g n i)").T, num_heads, num_kv_heads) + v = rearrange(v, " o g n i -> o (g n i)").T + self.post_write_tensors(tensor_map, f"model.layers.{bid}.attention.wq.weight", q) + self.post_write_tensors(tensor_map, f"model.layers.{bid}.attention.wk.weight", k) + self.post_write_tensors(tensor_map, f"model.layers.{bid}.attention.wv.weight", v) + else: + self.post_write_tensors(tensor_map, name, data_torch) + + +###### CONVERSION LOGIC ###### + + +def parse_args() -> argparse.Namespace: + parser = argparse.ArgumentParser( + description="Convert a huggingface model to a GGML compatible file") + parser.add_argument( + "--vocab-only", action="store_true", + help="extract only the vocab", + ) + parser.add_argument( + "--awq-path", type=Path, default=None, + help="Path to scale awq cache file") + parser.add_argument( + "--outfile", type=Path, + help="path to write to; default: based on input", + ) + parser.add_argument( + "--outtype", type=str, choices=["f32", "f16"], default="f16", + help="output format - use f32 for float32, f16 for float16", + ) + parser.add_argument("--bigendian", action="store_true", help="model is executed on big endian machine") + parser.add_argument( + "model", type=Path, + help="directory containing model file", + ) + + return parser.parse_args() + + +def main() -> None: + args = parse_args() + + dir_model = args.model + + if args.awq_path: + sys.path.insert(1, str(Path(__file__).parent / 'awq-py')) + from awq.apply_awq import add_scale_weights # type: ignore[import-not-found] + tmp_model_path = args.model / "weighted_model" + dir_model = tmp_model_path + if tmp_model_path.is_dir(): + print(f"{tmp_model_path} exists as a weighted model.") + else: + tmp_model_path.mkdir(parents=True, exist_ok=True) + print("Saving new weighted model ...") + add_scale_weights(str(args.model), str(args.awq_path), str(tmp_model_path)) + print(f"Saved weighted model at {tmp_model_path}.") + + if not dir_model.is_dir(): + print(f'Error: {args.model} is not a directory', file=sys.stderr) + sys.exit(1) + + ftype_map = { + "f32": gguf.GGMLQuantizationType.F32, + "f16": gguf.GGMLQuantizationType.F16, + } + + if args.outfile is not None: + fname_out = args.outfile + else: + # output in the same directory as the model by default + fname_out = dir_model / f'ggml-model-{args.outtype}.gguf' + + print(f"Loading model: {dir_model.name}") + + hparams = Model.load_hparams(dir_model) + + with torch.inference_mode(): + model_class = Model.from_model_architecture(hparams["architectures"][0]) + model_instance = model_class(dir_model, ftype_map[args.outtype], fname_out, args.bigendian) + + print("Set model parameters") + model_instance.set_gguf_parameters() + + print("Set model tokenizer") + model_instance.set_vocab() + + if args.vocab_only: + print(f"Exporting model vocab to '{fname_out}'") + model_instance.write_vocab() + else: + print(f"Exporting model to '{fname_out}'") + model_instance.write() + + print(f"Model successfully exported to '{fname_out}'") + + +if __name__ == '__main__': + main() diff --git a/extensions/model-extension/scripts/convert.py b/extensions/model-extension/scripts/convert.py new file mode 100755 index 000000000..323e8058d --- /dev/null +++ b/extensions/model-extension/scripts/convert.py @@ -0,0 +1,1478 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import argparse +import concurrent.futures +import enum +import faulthandler +import functools +import itertools +import json +import math +import mmap +import os +import pickle +import re +import signal +import struct +import sys +import time +import zipfile +from abc import ABCMeta, abstractmethod +from concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor +from dataclasses import dataclass +from pathlib import Path +from typing import IO, TYPE_CHECKING, Any, Callable, Iterable, Literal, TypeVar + +import numpy as np +from sentencepiece import SentencePieceProcessor + +if 'NO_LOCAL_GGUF' not in os.environ: + sys.path.insert(1, str(Path(__file__).parent / 'gguf-py')) +import gguf + +if TYPE_CHECKING: + from typing import TypeAlias + +if hasattr(faulthandler, 'register') and hasattr(signal, 'SIGUSR1'): + faulthandler.register(signal.SIGUSR1) + +NDArray: TypeAlias = 'np.ndarray[Any, Any]' + +ARCH = gguf.MODEL_ARCH.LLAMA + +DEFAULT_CONCURRENCY = 8 + +# +# data types +# + + +@dataclass(frozen=True) +class DataType: + name: str + dtype: np.dtype[Any] + valid_conversions: list[str] + + def elements_to_bytes(self, n_elements: int) -> int: + return n_elements * self.dtype.itemsize + + +@dataclass(frozen=True) +class UnquantizedDataType(DataType): + pass + + +DT_F16 = UnquantizedDataType('F16', dtype = np.dtype(np.float16), valid_conversions = ['F32', 'Q8_0']) +DT_F32 = UnquantizedDataType('F32', dtype = np.dtype(np.float32), valid_conversions = ['F16', 'Q8_0']) +DT_I32 = UnquantizedDataType('I32', dtype = np.dtype(np.int16), valid_conversions = []) +DT_BF16 = UnquantizedDataType('BF16', dtype = np.dtype(np.uint16), valid_conversions = ['F32', 'F16', 'Q8_0']) + + +@dataclass(frozen=True) +class QuantizedDataType(DataType): + block_size: int + quantized_dtype: np.dtype[Any] + ggml_type: gguf.GGMLQuantizationType + + def quantize(self, arr: NDArray) -> NDArray: + raise NotImplementedError(f'Quantization for {self.name} not implemented') + + def elements_to_bytes(self, n_elements: int) -> int: + assert n_elements % self.block_size == 0, f'Invalid number of elements {n_elements} for {self.name} with block size {self.block_size}' + return self.quantized_dtype.itemsize * (n_elements // self.block_size) + + +@dataclass(frozen=True) +class Q8_0QuantizedDataType(QuantizedDataType): + # Mini Q8_0 quantization in Python! + def quantize(self, arr: NDArray) -> NDArray: + assert arr.size % self.block_size == 0 and arr.size != 0, f'Bad array size {arr.size}' + assert arr.dtype == np.float32, f'Bad array type {arr.dtype}' + n_blocks = arr.size // self.block_size + blocks = arr.reshape((n_blocks, self.block_size)) + # Much faster implementation of block quantization contributed by @Cebtenzzre + + def quantize_blocks_q8_0(blocks: NDArray) -> Iterable[tuple[Any, Any]]: + d = abs(blocks).max(axis = 1) / np.float32(127) + with np.errstate(divide = 'ignore'): + qs = (blocks / d[:, None]).round() + qs[d == 0] = 0 + yield from zip(d, qs) + return np.fromiter(quantize_blocks_q8_0(blocks), count = n_blocks, dtype = self.quantized_dtype) + + +DT_Q8_0 = Q8_0QuantizedDataType('Q8_0', + dtype = np.dtype(np.float32), valid_conversions = [], + ggml_type = gguf.GGMLQuantizationType.Q8_0, block_size = 32, + quantized_dtype = np.dtype([('d', ' DataType: + dt = GGML_FILE_TYPE_TO_DATA_TYPE.get(self) + if dt is None: + raise ValueError(self) + # 1D tensors are always F32. + return dt if len(tensor.shape) > 1 else DT_F32 + + +GGML_FILE_TYPE_TO_DATA_TYPE: dict[GGMLFileType, DataType] = { + GGMLFileType.AllF32 : DT_F32, + GGMLFileType.MostlyF16 : DT_F16, + GGMLFileType.MostlyQ8_0: DT_Q8_0, +} + +# +# hparams loading +# + + +@dataclass +class Params: + n_vocab: int + n_embd: int + n_layer: int + n_ctx: int + n_ff: int + n_head: int + n_head_kv: int + n_experts: int | None = None + n_experts_used: int | None = None + f_norm_eps: float | None = None + + rope_scaling_type: gguf.RopeScalingType | None = None + f_rope_freq_base: float | None = None + f_rope_scale: float | None = None + n_orig_ctx: int | None = None + rope_finetuned: bool | None = None + + ftype: GGMLFileType | None = None + + # path to the directory containing the model files + path_model: Path | None = None + + @staticmethod + def guessed(model: LazyModel) -> Params: + # try transformer naming first + n_vocab, n_embd = model["model.embed_tokens.weight"].shape if "model.embed_tokens.weight" in model else model["tok_embeddings.weight"].shape + + # try transformer naming first + if "model.layers.0.self_attn.q_proj.weight" in model: + n_layer = next(i for i in itertools.count() if f"model.layers.{i}.self_attn.q_proj.weight" not in model) + elif "model.layers.0.self_attn.W_pack.weight" in model: # next: try baichuan naming + n_layer = next(i for i in itertools.count() if f"model.layers.{i}.self_attn.W_pack.weight" not in model) + else: + n_layer = next(i for i in itertools.count() if f"layers.{i}.attention.wq.weight" not in model) + + if n_layer < 1: + raise Exception("failed to guess 'n_layer'. This model is unknown or unsupported.\n" + "Suggestion: provide 'config.json' of the model in the same directory containing model files.") + + n_head = n_embd // 128 # guessed + n_mult = 256 # guessed + + # TODO: verify this + n_ff = int(2 * (4 * n_embd) / 3) + n_ff = n_mult * ((n_ff + n_mult - 1) // n_mult) + + return Params( + n_vocab = n_vocab, + n_embd = n_embd, + n_layer = n_layer, + n_ctx = -1, + n_ff = n_ff, + n_head = n_head, + n_head_kv = n_head, + f_norm_eps = 1e-5, + ) + + @staticmethod + def loadHFTransformerJson(model: LazyModel, config_path: Path) -> Params: + config = json.load(open(config_path)) + + rope_scaling_type = f_rope_scale = n_orig_ctx = rope_finetuned = None + rope_scaling = config.get("rope_scaling") + + if rope_scaling is not None and (typ := rope_scaling.get("type")): + rope_factor = rope_scaling.get("factor") + f_rope_scale = rope_factor + if typ == "linear": + rope_scaling_type = gguf.RopeScalingType.LINEAR + elif typ == "yarn": + rope_scaling_type = gguf.RopeScalingType.YARN + n_orig_ctx = rope_scaling['original_max_position_embeddings'] + rope_finetuned = rope_scaling['finetuned'] + else: + raise NotImplementedError(f'Unknown rope scaling type: {typ}') + + if "max_sequence_length" in config: + n_ctx = config["max_sequence_length"] + elif "max_position_embeddings" in config: + n_ctx = config["max_position_embeddings"] + else: + raise Exception("failed to guess 'n_ctx'. This model is unknown or unsupported.\n" + "Suggestion: provide 'config.json' of the model in the same directory containing model files.") + + n_experts = None + n_experts_used = None + + if "num_local_experts" in config: + n_experts = config["num_local_experts"] + n_experts_used = config["num_experts_per_tok"] + + return Params( + n_vocab = config["vocab_size"], + n_embd = config["hidden_size"], + n_layer = config["num_hidden_layers"], + n_ctx = n_ctx, + n_ff = config["intermediate_size"], + n_head = (n_head := config["num_attention_heads"]), + n_head_kv = config.get("num_key_value_heads", n_head), + n_experts = n_experts, + n_experts_used = n_experts_used, + f_norm_eps = config["rms_norm_eps"], + f_rope_freq_base = config.get("rope_theta"), + rope_scaling_type = rope_scaling_type, + f_rope_scale = f_rope_scale, + n_orig_ctx = n_orig_ctx, + rope_finetuned = rope_finetuned, + ) + + # LLaMA v2 70B params.json + # {"dim": 8192, "multiple_of": 4096, "ffn_dim_multiplier": 1.3, "n_heads": 64, "n_kv_heads": 8, "n_layers": 80, "norm_eps": 1e-05, "vocab_size": -1} + @staticmethod + def loadOriginalParamsJson(model: LazyModel, config_path: Path) -> Params: + config = json.load(open(config_path)) + + n_experts = None + n_experts_used = None + f_rope_freq_base = None + + # hack to determine LLaMA v1 vs v2 vs CodeLlama + if config.get("moe"): + # Mixtral + n_ctx = 32768 + elif config.get("rope_theta") == 1000000: + # CodeLlama + n_ctx = 16384 + elif config["norm_eps"] == 1e-05: + # LLaMA v2 + n_ctx = 4096 + else: + # LLaMA v1 + n_ctx = 2048 + + if "layers.0.feed_forward.w1.weight" in model: + n_ff = model["layers.0.feed_forward.w1.weight"].shape[0] + + if config.get("moe"): + n_ff = model["layers.0.feed_forward.experts.0.w1.weight"].shape[0] + n_experts = config["moe"]["num_experts"] + n_experts_used = config["moe"]["num_experts_per_tok"] + f_rope_freq_base = 1e6 + + return Params( + n_vocab = model["tok_embeddings.weight"].shape[0], + n_embd = config["dim"], + n_layer = config["n_layers"], + n_ctx = n_ctx, + n_ff = n_ff, + n_head = (n_head := config["n_heads"]), + n_head_kv = config.get("n_kv_heads", n_head), + n_experts = n_experts, + n_experts_used = n_experts_used, + f_norm_eps = config["norm_eps"], + f_rope_freq_base = config.get("rope_theta", f_rope_freq_base), + ) + + @staticmethod + def load(model_plus: ModelPlus) -> Params: + hf_config_path = model_plus.paths[0].parent / "config.json" + orig_config_path = model_plus.paths[0].parent / "params.json" + + if hf_config_path.exists(): + params = Params.loadHFTransformerJson(model_plus.model, hf_config_path) + elif orig_config_path.exists(): + params = Params.loadOriginalParamsJson(model_plus.model, orig_config_path) + elif model_plus.format != 'none': + params = Params.guessed(model_plus.model) + else: + raise ValueError('Cannot guess params when model format is none') + + params.path_model = model_plus.paths[0].parent + + return params + + +# +# vocab +# + +class BpeVocab: + def __init__(self, fname_tokenizer: Path, fname_added_tokens: Path | None) -> None: + self.bpe_tokenizer = json.loads(open(str(fname_tokenizer), encoding="utf-8").read()) + if isinstance(self.bpe_tokenizer.get('model'), dict): + self.vocab = self.bpe_tokenizer["model"]["vocab"] + else: + self.vocab = self.bpe_tokenizer + added_tokens: dict[str, int] + if fname_added_tokens is not None: + # FIXME: Verify that added tokens here _cannot_ overlap with the main vocab. + added_tokens = json.load(open(fname_added_tokens, encoding="utf-8")) + else: + # Fall back to trying to find the added tokens in tokenizer.json + tokenizer_json_file = fname_tokenizer.parent / 'tokenizer.json' + if not tokenizer_json_file.is_file(): + added_tokens = {} + else: + tokenizer_json = json.load(open(tokenizer_json_file, encoding="utf-8")) + added_tokens = dict( + (item['content'], item['id']) + for item in tokenizer_json.get('added_tokens', []) + # Added tokens here can be duplicates of the main vocabulary. + if item['content'] not in self.bpe_tokenizer) + + vocab_size: int = len(self.vocab) + expected_ids = list(range(vocab_size, vocab_size + len(added_tokens))) + actual_ids = sorted(added_tokens.values()) + if expected_ids != actual_ids: + expected_end_id = vocab_size + len(actual_ids) - 1 + raise Exception(f"Expected the {len(actual_ids)} added token ID(s) to be sequential in the range {vocab_size} - {expected_end_id}; got {actual_ids}") + + items = sorted(added_tokens.items(), key=lambda text_idx: text_idx[1]) + self.added_tokens_dict = added_tokens + self.added_tokens_list = [text for (text, idx) in items] + self.vocab_size_base: int = vocab_size + self.vocab_size: int = self.vocab_size_base + len(self.added_tokens_list) + self.fname_tokenizer = fname_tokenizer + self.fname_added_tokens = fname_added_tokens + + def bpe_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + reverse_vocab = {id: encoded_tok for encoded_tok, id in self.vocab.items()} + + for i, _ in enumerate(self.vocab): + yield reverse_vocab[i], 0.0, gguf.TokenType.NORMAL + + def added_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + for text in self.added_tokens_list: + score = -1000.0 + yield text.encode("utf-8"), score, gguf.TokenType.CONTROL + + def all_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + yield from self.bpe_tokens() + yield from self.added_tokens() + + def __repr__(self) -> str: + return f"" + + +class SentencePieceVocab: + def __init__(self, fname_tokenizer: Path, fname_added_tokens: Path | None) -> None: + self.sentencepiece_tokenizer = SentencePieceProcessor(str(fname_tokenizer)) + added_tokens: dict[str, int] + if fname_added_tokens is not None: + added_tokens = json.load(open(fname_added_tokens, encoding="utf-8")) + else: + added_tokens = {} + + vocab_size: int = self.sentencepiece_tokenizer.vocab_size() + + new_tokens = {id: piece for piece, id in added_tokens.items() if id >= vocab_size} + expected_new_ids = list(range(vocab_size, vocab_size + len(new_tokens))) + actual_new_ids = sorted(new_tokens.keys()) + + if expected_new_ids != actual_new_ids: + raise ValueError(f"Expected new token IDs {expected_new_ids} to be sequential; got {actual_new_ids}") + + # Token pieces that were added to the base vocabulary. + self.added_tokens_dict = added_tokens + self.added_tokens_list = [new_tokens[id] for id in actual_new_ids] + self.vocab_size_base = vocab_size + self.vocab_size = self.vocab_size_base + len(self.added_tokens_list) + self.fname_tokenizer = fname_tokenizer + self.fname_added_tokens = fname_added_tokens + + def sentencepiece_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + tokenizer = self.sentencepiece_tokenizer + for i in range(tokenizer.vocab_size()): + piece = tokenizer.id_to_piece(i) + text: bytes = piece.encode("utf-8") + score: float = tokenizer.get_score(i) + + toktype = gguf.TokenType.NORMAL + if tokenizer.is_unknown(i): + toktype = gguf.TokenType.UNKNOWN + if tokenizer.is_control(i): + toktype = gguf.TokenType.CONTROL + + # NOTE: I think added_tokens are user defined. + # ref: https://github.com/google/sentencepiece/blob/master/src/sentencepiece_model.proto + # if tokenizer.is_user_defined(i): toktype = gguf.TokenType.USER_DEFINED + + if tokenizer.is_unused(i): + toktype = gguf.TokenType.UNUSED + if tokenizer.is_byte(i): + toktype = gguf.TokenType.BYTE + + yield text, score, toktype + + def added_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + for text in self.added_tokens_list: + score = -1000.0 + yield text.encode("utf-8"), score, gguf.TokenType.USER_DEFINED + + def all_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + yield from self.sentencepiece_tokens() + yield from self.added_tokens() + + def __repr__(self) -> str: + return f"" + + +class HfVocab: + def __init__(self, fname_tokenizer: Path, fname_added_tokens: Path | None = None) -> None: + try: + from transformers import AutoTokenizer + except ImportError as e: + raise ImportError( + "To use HfVocab, please install the `transformers` package. " + "You can install it with `pip install transformers`." + ) from e + + print("fname_tokenizer:", fname_tokenizer) + # Allow the tokenizer to default to slow or fast versions. + # Explicitly set tokenizer to use local paths. + self.tokenizer = AutoTokenizer.from_pretrained( + fname_tokenizer, + cache_dir=fname_tokenizer, + local_files_only=True, + ) + + # Initialize lists and dictionaries for added tokens + self.added_tokens_list = [] + self.added_tokens_dict = dict() + self.added_tokens_ids = set() + + # Process added tokens + for tok, tokidx in sorted( + self.tokenizer.get_added_vocab().items(), key=lambda x: x[1] + ): + # Only consider added tokens that are not in the base vocabulary + if tokidx >= self.tokenizer.vocab_size: + self.added_tokens_list.append(tok) + self.added_tokens_dict[tok] = tokidx + self.added_tokens_ids.add(tokidx) + + # Store special tokens and their IDs + self.specials = { + tok: self.tokenizer.get_vocab()[tok] + for tok in self.tokenizer.all_special_tokens + } + self.special_ids = set(self.tokenizer.all_special_ids) + + # Set vocabulary sizes + self.vocab_size_base = self.tokenizer.vocab_size + self.vocab_size = self.vocab_size_base + len(self.added_tokens_list) + + self.fname_tokenizer = fname_tokenizer + self.fname_added_tokens = fname_added_tokens + + def hf_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + reverse_vocab = { + id: encoded_tok for encoded_tok, id in self.tokenizer.get_vocab().items() + } + + for token_id in range(self.vocab_size_base): + # Skip processing added tokens here + if token_id in self.added_tokens_ids: + continue + + # Convert token text to bytes + token_text = reverse_vocab[token_id].encode("utf-8") + + # Yield token text, score, and type + yield token_text, self.get_token_score(token_id), self.get_token_type( + token_id, token_text, self.special_ids # Reuse already stored special IDs + ) + + def get_token_type(self, token_id: int, token_text: bytes, special_ids: set[int]) -> gguf.TokenType: + # Special case for byte tokens + if re.fullmatch(br"<0x[0-9A-Fa-f]{2}>", token_text): + return gguf.TokenType.BYTE + + # Determine token type based on whether it's a special token + return gguf.TokenType.CONTROL if token_id in special_ids else gguf.TokenType.NORMAL + + def get_token_score(self, token_id: int) -> float: + # Placeholder for actual logic to determine the token's score + # This needs to be implemented based on specific requirements + return -1000.0 # Default score + + def added_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + for text in self.added_tokens_list: + if text in self.specials: + toktype = self.get_token_type(self.specials[text], b'', self.special_ids) + score = self.get_token_score(self.specials[text]) + else: + toktype = gguf.TokenType.USER_DEFINED + score = -1000.0 + + yield text.encode("utf-8"), score, toktype + + def has_newline_token(self): + return "<0x0A>" in self.tokenizer.vocab or "\n" in self.tokenizer.vocab + + def all_tokens(self) -> Iterable[tuple[bytes, float, gguf.TokenType]]: + yield from self.hf_tokens() + yield from self.added_tokens() + + def __repr__(self) -> str: + return f"" + + +Vocab: TypeAlias = "BpeVocab | SentencePieceVocab | HfVocab" + + +# +# data loading +# TODO: reuse (probably move to gguf.py?) +# + + +def permute(weights: NDArray, n_head: int, n_head_kv: int) -> NDArray: + # print( "permute debug " + str(weights.shape[0]) + " x " + str(weights.shape[1]) + " nhead " + str(n_head) + " nheadkv " + str(n_kv_head) ) + if n_head_kv is not None and n_head != n_head_kv: + n_head = n_head_kv + return (weights.reshape(n_head, 2, weights.shape[0] // n_head // 2, *weights.shape[1:]) + .swapaxes(1, 2) + .reshape(weights.shape)) + + +class Tensor(metaclass=ABCMeta): + data_type: DataType + + @abstractmethod + def astype(self, data_type: DataType) -> Tensor: ... + @abstractmethod + def permute(self, n_head: int, n_head_kv: int) -> Tensor: ... + @abstractmethod + def permute_part(self, n_part: int, n_head: int, n_head_kv: int) -> UnquantizedTensor: ... + @abstractmethod + def part(self, n_part: int) -> UnquantizedTensor: ... + @abstractmethod + def to_ggml(self) -> GGMLCompatibleTensor: ... + + +def bf16_to_fp32(bf16_arr: np.ndarray[Any, np.dtype[np.uint16]]) -> NDArray: + assert bf16_arr.dtype == np.uint16, f"Input array should be of dtype uint16, but got {bf16_arr.dtype}" + fp32_arr = bf16_arr.astype(np.uint32) << 16 + return fp32_arr.view(np.float32) + + +class UnquantizedTensor(Tensor): + def __init__(self, ndarray: NDArray) -> None: + assert isinstance(ndarray, np.ndarray) + self.ndarray = ndarray + self.data_type = NUMPY_TYPE_TO_DATA_TYPE[ndarray.dtype] + + def astype(self, data_type: DataType) -> Tensor: + dtype = data_type.dtype + if self.data_type == DT_BF16: + self.ndarray = bf16_to_fp32(self.ndarray) + return UnquantizedTensor(self.ndarray.astype(dtype)) + + def to_ggml(self) -> UnquantizedTensor: + return self + + def permute_part(self, n_part: int, n_head: int, n_head_kv: int) -> UnquantizedTensor: + r = self.ndarray.shape[0] // 3 + return UnquantizedTensor(permute(self.ndarray[r * n_part : r * n_part + r, ...], n_head, n_head_kv)) + + def part(self, n_part: int) -> UnquantizedTensor: + r = self.ndarray.shape[0] // 3 + return UnquantizedTensor(self.ndarray[r * n_part : r * n_part + r, ...]) + + def permute(self, n_head: int, n_head_kv: int) -> UnquantizedTensor: + return UnquantizedTensor(permute(self.ndarray, n_head, n_head_kv)) + + +def load_unquantized(lazy_tensor: LazyTensor, expected_dtype: Any = None, convert: bool = False) -> NDArray: + tensor = lazy_tensor.load() + assert isinstance(tensor, UnquantizedTensor) + + # double-check: + actual_shape = list(tensor.ndarray.shape) + assert actual_shape == lazy_tensor.shape, (actual_shape, lazy_tensor.shape) + if expected_dtype is not None and expected_dtype != tensor.ndarray.dtype: + if convert: + tensor.ndarray = tensor.ndarray.astype(expected_dtype) + else: + raise ValueError(f'expected this tensor to have dtype {expected_dtype}, got {tensor.ndarray.dtype}') + + return tensor.ndarray + + +GGMLCompatibleTensor = UnquantizedTensor + + +@dataclass +class LazyTensor: + _load: Callable[[], Tensor] + shape: list[int] + data_type: DataType + description: str + + def load(self) -> Tensor: + ret = self._load() + # Should be okay if it maps to the same numpy type? + assert ret.data_type == self.data_type or (self.data_type.dtype == ret.data_type.dtype), \ + (self.data_type, ret.data_type, self.description) + return ret + + def astype(self, data_type: DataType) -> LazyTensor: + self.validate_conversion_to(data_type) + + def load() -> Tensor: + return self.load().astype(data_type) + return LazyTensor(load, self.shape, data_type, f'convert({data_type}) {self.description}') + + def validate_conversion_to(self, data_type: DataType) -> None: + if data_type != self.data_type and data_type.name not in self.data_type.valid_conversions: + raise ValueError(f'Cannot validate conversion from {self.data_type} to {data_type}.') + + +LazyModel: TypeAlias = 'dict[str, LazyTensor]' + + +@dataclass +class ModelPlus: + model: LazyModel + paths: list[Path] # Where this was read from. + format: Literal['ggml', 'torch', 'safetensors', 'none'] + vocab: Vocab | None # For GGML models (which have vocab built in), the vocab. + + +def merge_sharded(models: list[LazyModel]) -> LazyModel: + # Original LLaMA models have each file contain one part of each tensor. + # Use a dict instead of a set to preserve order. + names = {name: None for model in models for name in model} + + def convert(name: str) -> LazyTensor: + lazy_tensors: list[LazyTensor] = [model[name] for model in models] + if len(lazy_tensors) == 1: + # only one file; don't go through this procedure since there might + # be quantized tensors + return lazy_tensors[0] + if len(lazy_tensors[0].shape) == 1: + # the tensor is just duplicated in every file + return lazy_tensors[0] + if name.startswith('tok_embeddings.') or \ + name.endswith('.attention.wo.weight') or \ + name.endswith('.feed_forward.w2.weight'): + # split by columns + axis = 1 + else: + # split by rows + axis = 0 + concatenated_shape = list(lazy_tensors[0].shape) + concatenated_shape[axis] = sum(tensor.shape[axis] for tensor in lazy_tensors) + + def load() -> UnquantizedTensor: + ndarrays = [load_unquantized(tensor) for tensor in lazy_tensors] + concatenated: NDArray = np.concatenate(ndarrays, axis=axis) + return UnquantizedTensor(concatenated) + description = 'concatenated[[' + '] | ['.join(lt.description for lt in lazy_tensors) + ']]' + return LazyTensor(load, concatenated_shape, lazy_tensors[0].data_type, description) + return {name: convert(name) for name in names} + + +def merge_multifile_models(models_plus: list[ModelPlus]) -> ModelPlus: + formats = set(mp.format for mp in models_plus) + assert len(formats) == 1, "different formats?" + format = formats.pop() + paths = [path for mp in models_plus for path in mp.paths] + # Use the first non-None vocab, if any. + try: + vocab = next(mp.vocab for mp in models_plus if mp.vocab is not None) + except StopIteration: + vocab = None + + if any("model.embed_tokens.weight" in mp.model for mp in models_plus): + # Transformers models put different tensors in different files, but + # don't split individual tensors between files. + model: LazyModel = {} + for mp in models_plus: + model.update(mp.model) + else: + model = merge_sharded([mp.model for mp in models_plus]) + + return ModelPlus(model, paths, format, vocab) # pytype: disable=wrong-arg-types + + +def permute_lazy(lazy_tensor: LazyTensor, n_head: int, n_head_kv: int) -> LazyTensor: + def load() -> Tensor: + return lazy_tensor.load().permute(n_head, n_head_kv) + return LazyTensor(load, lazy_tensor.shape, lazy_tensor.data_type, f'permute({n_head}, {n_head_kv}) ' + lazy_tensor.description) + + +def permute_part_lazy(lazy_tensor: LazyTensor, n_part: int, n_head: int, n_head_kv: int) -> LazyTensor: + def load() -> Tensor: + return lazy_tensor.load().permute_part(n_part, n_head, n_head_kv) + s = lazy_tensor.shape.copy() + s[0] = s[0] // 3 + return LazyTensor(load, s, lazy_tensor.data_type, f'permute({n_head}, {n_head_kv}) ' + lazy_tensor.description) + + +def part_lazy(lazy_tensor: LazyTensor, n_part: int) -> LazyTensor: + def load() -> Tensor: + return lazy_tensor.load().part(n_part) + s = lazy_tensor.shape.copy() + s[0] = s[0] // 3 + return LazyTensor(load, s, lazy_tensor.data_type, 'part ' + lazy_tensor.description) + + +# Functionality that simulates `torch.load` but where individual tensors are +# only loaded into memory on demand, not all at once. +# PyTorch can't do this natively as of time of writing: +# - https://github.com/pytorch/pytorch/issues/64327 +# This allows us to de-shard without multiplying RAM usage, and also +# conveniently drops the PyTorch dependency (though we still need numpy). + + +@dataclass +class LazyStorageKind: + data_type: DataType + + +@dataclass +class LazyStorage: + load: Callable[[int, int], NDArray] + kind: LazyStorageKind + description: str + + +class LazyUnpickler(pickle.Unpickler): + def __init__(self, fp: IO[bytes], data_base_path: str, zip_file: zipfile.ZipFile): + super().__init__(fp) + self.data_base_path = data_base_path + self.zip_file = zip_file + + def persistent_load(self, pid: Any) -> Any: + assert pid[0] == 'storage' + assert isinstance(pid[1], LazyStorageKind) + data_type = pid[1].data_type + filename_stem = pid[2] + filename = f'{self.data_base_path}/{filename_stem}' + info = self.zip_file.getinfo(filename) + + def load(offset: int, elm_count: int) -> NDArray: + dtype = data_type.dtype + fp = self.zip_file.open(info) + fp.seek(offset * dtype.itemsize) + size = elm_count * dtype.itemsize + data = fp.read(size) + assert len(data) == size + return np.frombuffer(data, dtype) + description = f'storage data_type={data_type} path-in-zip={filename} path={self.zip_file.filename}' + return LazyStorage(load=load, kind=pid[1], description=description) + + @staticmethod + def lazy_rebuild_tensor_v2(storage: Any, storage_offset: Any, size: Any, stride: Any, + requires_grad: Any, backward_hooks: Any, metadata: Any = None) -> LazyTensor: + assert isinstance(storage, LazyStorage) + + def load() -> UnquantizedTensor: + elm_count = stride[0] * size[0] + return UnquantizedTensor(storage.load(storage_offset, elm_count).reshape(size)) + description = f'pickled storage_offset={storage_offset} in {storage.description}' + return LazyTensor(load, list(size), storage.kind.data_type, description) + + @staticmethod + def rebuild_from_type_v2(func, new_type, args, state): + return func(*args) + + CLASSES: dict[tuple[str, str], Any] = { + # getattr used here as a workaround for mypy not being smart enough to determine + # the staticmethods have a __func__ attribute. + ('torch._tensor', '_rebuild_from_type_v2'): getattr(rebuild_from_type_v2, '__func__'), + ('torch._utils', '_rebuild_tensor_v2'): getattr(lazy_rebuild_tensor_v2, '__func__'), + ('torch', 'BFloat16Storage'): LazyStorageKind(DT_BF16), + ('torch', 'HalfStorage'): LazyStorageKind(DT_F16), + ('torch', 'FloatStorage'): LazyStorageKind(DT_F32), + ('torch', 'IntStorage'): LazyStorageKind(DT_I32), + ('torch', 'Tensor'): LazyTensor, + } + + def find_class(self, module: str, name: str) -> Any: + if not module.startswith('torch'): + return super().find_class(module, name) + return self.CLASSES[(module, name)] + + +def lazy_load_torch_file(outer_fp: IO[bytes], path: Path) -> ModelPlus: + zf = zipfile.ZipFile(outer_fp) + pickle_paths = [name for name in zf.namelist() if name.endswith('.pkl')] + assert len(pickle_paths) == 1, pickle_paths + pickle_fp = zf.open(pickle_paths[0], 'r') + unpickler = LazyUnpickler(pickle_fp, + data_base_path=pickle_paths[0][:-4], + zip_file=zf) + model = unpickler.load() + if 'model' in model: model = model['model'] + as_dict = dict(model.items()) + return ModelPlus(model=as_dict, paths=[path], format='torch', vocab=None) + + +def lazy_load_safetensors_file(fp: IO[bytes], path: Path) -> ModelPlus: + header_size, = struct.unpack(' LazyTensor: + data_type = SAFETENSORS_DATA_TYPES[info['dtype']] + numpy_dtype = data_type.dtype + shape: list[int] = info['shape'] + begin, end = info['data_offsets'] + assert 0 <= begin <= end <= len(byte_buf) + assert end - begin == math.prod(shape) * numpy_dtype.itemsize + buf = byte_buf[begin:end] + + def load() -> UnquantizedTensor: + return UnquantizedTensor(np.frombuffer(buf, dtype=numpy_dtype).reshape(shape)) + description = f'safetensors begin={begin} end={end} type={data_type} path={path}' + return LazyTensor(load, shape, data_type, description) + model = {name: convert(info) for (name, info) in header.items() if name != '__metadata__'} + return ModelPlus(model=model, paths=[path], format='safetensors', vocab=None) + + +def must_read(fp: IO[bytes], length: int) -> bytes: + ret = fp.read(length) + if len(ret) < length: + raise Exception("unexpectedly reached end of file") + return ret + + +@functools.lru_cache(maxsize=None) +def lazy_load_file(path: Path) -> ModelPlus: + fp = open(path, 'rb') + first8 = fp.read(8) + fp.seek(0) + if first8[:2] == b'PK': + # A zip file, i.e. PyTorch format + return lazy_load_torch_file(fp, path) + elif struct.unpack(' Iterable[Out]: + '''Parallel map, but with backpressure. If the caller doesn't call `next` + fast enough, this will stop calling `func` at some point rather than + letting results pile up in memory. Specifically, there is a max of one + output value buffered per thread.''' + if concurrency < 2: + yield from map(func, iterable) + # Not reached. + iterable = iter(iterable) + executor_class: type[ThreadPoolExecutor] | type[ProcessPoolExecutor] + if use_processpool_executor: + executor_class = ProcessPoolExecutor + else: + executor_class = ThreadPoolExecutor + with executor_class(max_workers=max_workers) as executor: + futures: list[concurrent.futures.Future[Out]] = [] + done = False + for _ in range(concurrency): + try: + futures.append(executor.submit(func, next(iterable))) + except StopIteration: + done = True + break + + while futures: + result = futures.pop(0).result() + while not done and len(futures) < concurrency: + try: + futures.append(executor.submit(func, next(iterable))) + except StopIteration: + done = True + break + yield result + + +def check_vocab_size(params: Params, vocab: Vocab, pad_vocab: bool = False) -> None: + # Handle special case where the model's vocab size is not set + if params.n_vocab == -1: + raise ValueError( + f"The model's vocab size is set to -1 in params.json. Please update it manually. Maybe {vocab.vocab_size}?" + ) + + # Check for a vocab size mismatch + if params.n_vocab == vocab.vocab_size: + print("Ignoring added_tokens.json since model matches vocab size without it.") + return + + if pad_vocab and params.n_vocab > vocab.vocab_size: + pad_count = params.n_vocab - vocab.vocab_size + print( + f"Padding vocab with {pad_count} token(s) - through " + ) + for i in range(1, pad_count + 1): + vocab.added_tokens_dict[f""] = -1 + vocab.added_tokens_list.append(f"") + vocab.vocab_size = params.n_vocab + return + + msg = f"Vocab size mismatch (model has {params.n_vocab}, but {vocab.fname_tokenizer} has {vocab.vocab_size})." + if vocab.vocab_size < params.n_vocab < vocab.vocab_size + 20: + msg += f" Most likely you are missing added_tokens.json (should be in {vocab.fname_tokenizer.parent})." + if vocab.vocab_size < params.n_vocab: + msg += " Add the --pad-vocab option and try again." + + raise Exception(msg) + + +class OutputFile: + def __init__(self, fname_out: Path, endianess:gguf.GGUFEndian = gguf.GGUFEndian.LITTLE) -> None: + self.gguf = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH], endianess=endianess) + + def add_meta_arch(self, params: Params) -> None: + name = "LLaMA" + + # TODO: better logic to determine model name + if params.n_ctx == 4096: + name = "LLaMA v2" + elif params.path_model is not None: + name = str(params.path_model.parent).split('/')[-1] + + self.gguf.add_name (name) + self.gguf.add_context_length (params.n_ctx) + self.gguf.add_embedding_length (params.n_embd) + self.gguf.add_block_count (params.n_layer) + self.gguf.add_feed_forward_length (params.n_ff) + self.gguf.add_rope_dimension_count(params.n_embd // params.n_head) + self.gguf.add_head_count (params.n_head) + self.gguf.add_head_count_kv (params.n_head_kv) + + if params.n_experts: + self.gguf.add_expert_count(params.n_experts) + + if params.n_experts_used: + self.gguf.add_expert_used_count(params.n_experts_used) + + if params.f_norm_eps: + self.gguf.add_layer_norm_rms_eps(params.f_norm_eps) + else: + raise ValueError('f_norm_eps is None') + + if params.f_rope_freq_base is not None: + self.gguf.add_rope_freq_base(params.f_rope_freq_base) + + if params.rope_scaling_type: + assert params.f_rope_scale is not None + self.gguf.add_rope_scaling_type(params.rope_scaling_type) + self.gguf.add_rope_scaling_factor(params.f_rope_scale) + + if params.n_orig_ctx is not None: + self.gguf.add_rope_scaling_orig_ctx_len(params.n_orig_ctx) + + if params.rope_finetuned is not None: + self.gguf.add_rope_scaling_finetuned(params.rope_finetuned) + + if params.ftype is not None: + self.gguf.add_file_type(params.ftype) + + def handle_tokenizer_model(self, vocab: Vocab) -> str: + # Map the vocab types to the supported tokenizer models + tokenizer_model = { + SentencePieceVocab: "llama", + HfVocab: "llama", + BpeVocab: "gpt2", + }.get(type(vocab)) + + # Block if vocab type is not predefined + if tokenizer_model is None: + raise ValueError("Unknown vocab type: Not supported") + + return tokenizer_model + + def extract_vocabulary_from_model(self, vocab: Vocab) -> tuple[list[bytes], list[float], list[gguf.TokenType]]: + tokens = [] + scores = [] + toktypes = [] + + # NOTE: `all_tokens` returns the base vocabulary and added tokens + for text, score, toktype in vocab.all_tokens(): + tokens.append(text) + scores.append(score) + toktypes.append(toktype) + + assert len(tokens) == vocab.vocab_size + + return tokens, scores, toktypes + + def add_meta_vocab(self, vocab: Vocab) -> None: + # Handle the tokenizer model + tokenizer_model = self.handle_tokenizer_model(vocab) + + # Ensure that tokenizer_model is added to the GGUF model + self.gguf.add_tokenizer_model(tokenizer_model) + + # Extract model vocabulary for model conversion + tokens, scores, toktypes = self.extract_vocabulary_from_model(vocab) + + # Add extracted token information for model conversion + self.gguf.add_token_list(tokens) + self.gguf.add_token_scores(scores) + self.gguf.add_token_types(toktypes) + + def add_meta_special_vocab(self, svocab: gguf.SpecialVocab) -> None: + svocab.add_to_gguf(self.gguf) + + def add_tensor_info(self, name: str, tensor: LazyTensor) -> None: + n_elements = int(np.prod(tensor.shape)) + raw_dtype = getattr(tensor.data_type, 'ggml_type', None) + data_type = getattr(tensor.data_type, 'quantized_type', None) or tensor.data_type.dtype + data_nbytes = tensor.data_type.elements_to_bytes(n_elements) + self.gguf.add_tensor_info(name, tensor.shape, data_type, data_nbytes, raw_dtype=raw_dtype) + + def write_meta(self) -> None: + self.gguf.write_header_to_file() + self.gguf.write_kv_data_to_file() + + def write_tensor_info(self) -> None: + self.gguf.write_ti_data_to_file() + + def close(self) -> None: + self.gguf.close() + + @staticmethod + def write_vocab_only( + fname_out: Path, params: Params, vocab: Vocab, svocab: gguf.SpecialVocab, + endianess: gguf.GGUFEndian = gguf.GGUFEndian.LITTLE, pad_vocab: bool = False, + ) -> None: + check_vocab_size(params, vocab, pad_vocab = pad_vocab) + + of = OutputFile(fname_out, endianess=endianess) + + # meta data + of.add_meta_arch(params) + of.add_meta_vocab(vocab) + of.add_meta_special_vocab(svocab) + + of.write_meta() + + of.close() + + @staticmethod + def do_item(item: tuple[str, LazyTensor]) -> tuple[DataType, NDArray]: + name, lazy_tensor = item + tensor = lazy_tensor.load().to_ggml() + return (lazy_tensor.data_type, tensor.ndarray) + + @staticmethod + def maybe_do_quantize(item: tuple[DataType, NDArray]) -> NDArray: + dt, arr = item + if not isinstance(dt, QuantizedDataType): + return arr + return dt.quantize(arr) + + @staticmethod + def write_all( + fname_out: Path, ftype: GGMLFileType, params: Params, model: LazyModel, vocab: Vocab, svocab: gguf.SpecialVocab, + concurrency: int = DEFAULT_CONCURRENCY, endianess: gguf.GGUFEndian = gguf.GGUFEndian.LITTLE, + pad_vocab: bool = False, + ) -> None: + check_vocab_size(params, vocab, pad_vocab=pad_vocab) + + of = OutputFile(fname_out, endianess=endianess) + + # meta data + of.add_meta_arch(params) + of.add_meta_vocab(vocab) + of.add_meta_special_vocab(svocab) + + # tensor info + for name, lazy_tensor in model.items(): + of.add_tensor_info(name, lazy_tensor) + + of.write_meta() + of.write_tensor_info() + + # tensor data + ndarrays_inner = bounded_parallel_map(OutputFile.do_item, model.items(), concurrency = concurrency) + if ftype == GGMLFileType.MostlyQ8_0: + ndarrays = bounded_parallel_map( + OutputFile.maybe_do_quantize, ndarrays_inner, concurrency=concurrency, max_workers=concurrency, + use_processpool_executor=True, + ) + else: + ndarrays = map(OutputFile.maybe_do_quantize, ndarrays_inner) + + start = time.time() + for i, ((name, lazy_tensor), ndarray) in enumerate(zip(model.items(), ndarrays)): + elapsed = time.time() - start + size = ' x '.join(f"{dim:6d}" for dim in lazy_tensor.shape) + padi = len(str(len(model))) + print( + f"[{i+1:{padi}d}/{len(model)}] Writing tensor {name:38s} | size {size:16} | type {lazy_tensor.data_type.name:4} | T+{int(elapsed):4}" + ) + of.gguf.write_tensor_data(ndarray) + + of.close() + + +def pick_output_type(model: LazyModel, output_type_str: str | None) -> GGMLFileType: + wq_type = model[gguf.TENSOR_NAMES[gguf.MODEL_TENSOR.ATTN_Q].format(bid=0) + ".weight"].data_type + + if output_type_str == "f32" or (output_type_str is None and wq_type == DT_F32): + return GGMLFileType.AllF32 + if output_type_str == "f16" or (output_type_str is None and wq_type in (DT_F16, DT_BF16)): + return GGMLFileType.MostlyF16 + if output_type_str == "q8_0": + return GGMLFileType.MostlyQ8_0 + + name_to_type = {name: lazy_tensor.data_type for (name, lazy_tensor) in model.items()} + + raise Exception(f"Unexpected combination of types: {name_to_type}") + + +def convert_to_output_type(model: LazyModel, output_type: GGMLFileType) -> LazyModel: + return {name: tensor.astype(output_type.type_for_tensor(name, tensor)) + for (name, tensor) in model.items()} + + +def convert_model_names(model: LazyModel, params: Params) -> LazyModel: + tmap = gguf.TensorNameMap(ARCH, params.n_layer) + should_skip: set[gguf.MODEL_TENSOR] = set(gguf.MODEL_TENSOR_SKIP.get(ARCH, [])) + + tmp = model + + # HF models permut or pack some of the tensors, so we need to undo that + for i in itertools.count(): + if f"model.layers.{i}.self_attn.q_proj.weight" in model: + print(f"Permuting layer {i}") + tmp[f"model.layers.{i}.self_attn.q_proj.weight"] = permute_lazy(model[f"model.layers.{i}.self_attn.q_proj.weight"], params.n_head, params.n_head) + tmp[f"model.layers.{i}.self_attn.k_proj.weight"] = permute_lazy(model[f"model.layers.{i}.self_attn.k_proj.weight"], params.n_head, params.n_head_kv) + # tmp[f"model.layers.{i}.self_attn.v_proj.weight"] = model[f"model.layers.{i}.self_attn.v_proj.weight"] + elif f"model.layers.{i}.self_attn.W_pack.weight" in model: + print(f"Unpacking and permuting layer {i}") + tmp[f"model.layers.{i}.self_attn.q_proj.weight"] = permute_part_lazy(model[f"model.layers.{i}.self_attn.W_pack.weight"], 0, params.n_head, params.n_head) + tmp[f"model.layers.{i}.self_attn.k_proj.weight"] = permute_part_lazy(model[f"model.layers.{i}.self_attn.W_pack.weight"], 1, params.n_head, params.n_head_kv) + tmp[f"model.layers.{i}.self_attn.v_proj.weight"] = part_lazy (model[f"model.layers.{i}.self_attn.W_pack.weight"], 2) + del tmp[f"model.layers.{i}.self_attn.W_pack.weight"] + else: + break + + out: LazyModel = {} + for name, lazy_tensor in model.items(): + tensor_type, name_new = tmap.get_type_and_name(name, try_suffixes = (".weight", ".bias")) or (None, None) + if name_new is None: + raise Exception(f"Unexpected tensor name: {name}") + + if tensor_type in should_skip: + print(f"skipping tensor {name_new}") + continue + + print(f"{name:48s} -> {name_new:40s} | {lazy_tensor.data_type.name:6s} | {lazy_tensor.shape}") + out[name_new] = lazy_tensor + + return out + + +def nth_multifile_path(path: Path, n: int) -> Path | None: + '''Given any path belonging to a multi-file model (e.g. foo.bin.1), return + the nth path in the model. + ''' + # Support the following patterns: + patterns: list[tuple[str, str]] = [ + # - x.00.pth, x.01.pth, etc. + (r'\.[0-9]{2}\.pth$', f'.{n:02}.pth'), + # - x-00001-of-00002.bin, x-00002-of-00002.bin, etc. + (r'-[0-9]{5}-of-(.*)$', fr'-{n:05}-of-\1'), + # x.bin, x.bin.1, etc. + (r'(\.[0-9]+)?$', r'\1' if n == 0 else fr'\1.{n}') + ] + for regex, replacement in patterns: + if re.search(regex, path.name): + new_path = path.with_name(re.sub(regex, replacement, path.name)) + if new_path.exists(): + return new_path + return None + + +def find_multifile_paths(path: Path) -> list[Path]: + '''Given any path belonging to a multi-file model (e.g. foo.bin.1), return + the whole list of paths in the model. + ''' + ret: list[Path] = [] + for i in itertools.count(): + nth_path = nth_multifile_path(path, i) + if nth_path is None: + break + ret.append(nth_path) + if not ret: + # No matches. This should only happen if the file was named, e.g., + # foo.0, and there was no file named foo. Oh well, try to process it + # as a single file. + return [path] + return ret + + +def load_some_model(path: Path) -> ModelPlus: + '''Load a model of any supported format.''' + # Be extra-friendly and accept either a file or a directory: + if path.is_dir(): + # Check if it's a set of safetensors files first + globs = ["model-00001-of-*.safetensors", "model.safetensors"] + files = [file for glob in globs for file in path.glob(glob)] + if not files: + # Try the PyTorch patterns too, with lower priority + globs = ["consolidated.00.pth", "pytorch_model-00001-of-*.bin", "*.pt", "pytorch_model.bin"] + files = [file for glob in globs for file in path.glob(glob)] + if not files: + raise Exception(f"Can't find model in directory {path}") + if len(files) > 1: + raise Exception(f"Found multiple models in {path}, not sure which to pick: {files}") + path = files[0] + + paths = find_multifile_paths(path) + models_plus: list[ModelPlus] = [] + for path in paths: + print(f"Loading model file {path}") + models_plus.append(lazy_load_file(path)) + + model_plus = merge_multifile_models(models_plus) + return model_plus + + +class VocabFactory: + def __init__(self, path: Path): + self.path = path + self.files: dict[str, Path | None] = { + "tokenizer.model": None, + "vocab.json": None, + "tokenizer.json": None, + } + self._detect_files() + + def _detect_files(self): + for file in self.files.keys(): + file_path = self.path / file + parent_file_path = self.path.parent / file + if file_path.exists(): + self.files[file] = file_path + elif parent_file_path.exists(): + self.files[file] = parent_file_path + print(f"Found vocab files: {self.files}") + + def _select_file(self, vocabtype: str | None) -> Path: + if vocabtype in ["spm", "bpe"]: + for file_key in self.files.keys(): + if (file := self.files[file_key]) is not None: + return file + raise FileNotFoundError(f"{vocabtype} vocab not found.") + if vocabtype == "hfft": + # For Hugging Face Fast Tokenizer, return the directory path instead of a specific file + return self.path + raise ValueError(f"Unsupported vocabulary type {vocabtype}") + + def _create_special_vocab(self, vocab: Vocab, vocabtype: str, model_parent_path: Path) -> gguf.SpecialVocab: + load_merges = vocabtype == "bpe" + n_vocab = vocab.vocab_size if hasattr(vocab, "vocab_size") else None + return gguf.SpecialVocab( + model_parent_path, + load_merges=load_merges, + special_token_types=None, # Predetermined or passed as a parameter + n_vocab=n_vocab, + ) + + def load_vocab(self, vocabtype: str, model_parent_path: Path) -> tuple[Vocab, gguf.SpecialVocab]: + path = self._select_file(vocabtype) + print(f"Loading vocab file '{path}', type '{vocabtype}'") + + added_tokens_path = path.parent / "added_tokens.json" + vocab: Vocab + if vocabtype == "bpe": + vocab = BpeVocab( + path, added_tokens_path if added_tokens_path.exists() else None + ) + elif vocabtype == "spm": + vocab = SentencePieceVocab( + path, added_tokens_path if added_tokens_path.exists() else None + ) + elif vocabtype == "hfft": + vocab = HfVocab( + path, added_tokens_path if added_tokens_path.exists() else None + ) + else: + raise ValueError(f"Unsupported vocabulary type {vocabtype}") + # FIXME: Respect --vocab-dir? + special_vocab = self._create_special_vocab( + vocab, + vocabtype, + model_parent_path, + ) + return vocab, special_vocab + + +def default_outfile(model_paths: list[Path], file_type: GGMLFileType) -> Path: + namestr = { + GGMLFileType.AllF32: "f32", + GGMLFileType.MostlyF16: "f16", + GGMLFileType.MostlyQ8_0:"q8_0", + }[file_type] + ret = model_paths[0].parent / f"ggml-model-{namestr}.gguf" + if ret in model_paths: + sys.stderr.write( + f"Error: Default output path ({ret}) would overwrite the input. " + "Please explicitly specify a path using --outfile.\n") + sys.exit(1) + return ret + + +def do_dump_model(model_plus: ModelPlus) -> None: + print(f"model_plus.paths = {model_plus.paths!r}") + print(f"model_plus.format = {model_plus.format!r}") + print(f"model_plus.vocab = {model_plus.vocab!r}") + for name, lazy_tensor in model_plus.model.items(): + print(f"{name}: shape={lazy_tensor.shape} type={lazy_tensor.data_type}; {lazy_tensor.description}") + + +def main(args_in: list[str] | None = None) -> None: + output_choices = ["f32", "f16"] + if np.uint32(1) == np.uint32(1).newbyteorder("<"): + # We currently only support Q8_0 output on little endian systems. + output_choices.append("q8_0") + vocab_types = ["spm", "bpe", "hfft"] + parser = argparse.ArgumentParser(description="Convert a LLaMa model to a GGML compatible file") + parser.add_argument("--awq-path", type=Path, help="Path to scale awq cache file", default=None) + parser.add_argument("--dump", action="store_true", help="don't convert, just show what's in the model") + parser.add_argument("--dump-single", action="store_true", help="don't convert, just show what's in a single model file") + parser.add_argument("--vocab-only", action="store_true", help="extract only the vocab") + parser.add_argument("--outtype", choices=output_choices, help="output format - note: q8_0 may be very slow (default: f16 or f32 based on input)") + parser.add_argument("--vocab-dir", type=Path, help="directory containing tokenizer.model, if separate from model file") + parser.add_argument("--vocab-type", choices=vocab_types, help="The vocabulary format used to define the tokenizer model (default: spm)", default="spm") + parser.add_argument("--outfile", type=Path, help="path to write to; default: based on input") + parser.add_argument("model", type=Path, help="directory containing model file, or model file itself (*.pth, *.pt, *.bin)") + parser.add_argument("--ctx", type=int, help="model training context (default: based on input)") + parser.add_argument("--concurrency", type=int, help=f"concurrency used for conversion (default: {DEFAULT_CONCURRENCY})", default=DEFAULT_CONCURRENCY) + parser.add_argument("--big-endian", action="store_true", help="model is executed on big endian machine") + parser.add_argument("--pad-vocab", action="store_true", help="add pad tokens when model vocab expects more than tokenizer metadata provides") + + args = parser.parse_args(args_in) + if args.awq_path: + sys.path.insert(1, str(Path(__file__).parent / 'awq-py')) + from awq.apply_awq import add_scale_weights # type: ignore[import-not-found] + tmp_model_path = args.model / "weighted_model" + if tmp_model_path.is_dir(): + print(f"{tmp_model_path} exists as a weighted model.") + else: + tmp_model_path.mkdir(parents=True, exist_ok=True) + print("Saving new weighted model ...") + add_scale_weights(str(args.model), str(args.awq_path), str(tmp_model_path)) + print(f"Saved weighted model at {tmp_model_path}.") + args.model = tmp_model_path + + if args.dump_single: + model_plus = lazy_load_file(args.model) + do_dump_model(model_plus) + return + + if not args.vocab_only: + model_plus = load_some_model(args.model) + else: + model_plus = ModelPlus(model = {}, paths = [args.model / 'dummy'], format = 'none', vocab = None) + + if args.dump: + do_dump_model(model_plus) + return + endianess = gguf.GGUFEndian.LITTLE + if args.big_endian: + endianess = gguf.GGUFEndian.BIG + + params = Params.load(model_plus) + if params.n_ctx == -1: + if args.ctx is None: + raise Exception("The model doesn't have a context size, and you didn't specify one with --ctx\n" + "Please specify one with --ctx:\n" + " - LLaMA v1: --ctx 2048\n" + " - LLaMA v2: --ctx 4096\n") + params.n_ctx = args.ctx + + if args.outtype: + params.ftype = { + "f32": GGMLFileType.AllF32, + "f16": GGMLFileType.MostlyF16, + "q8_0": GGMLFileType.MostlyQ8_0, + }[args.outtype] + + print(f"params = {params}") + + model_parent_path = model_plus.paths[0].parent + vocab_path = Path(args.vocab_dir or args.model or model_parent_path) + vocab_factory = VocabFactory(vocab_path) + vocab, special_vocab = vocab_factory.load_vocab(args.vocab_type, model_parent_path) + + if args.vocab_only: + if not args.outfile: + raise ValueError("need --outfile if using --vocab-only") + outfile = args.outfile + OutputFile.write_vocab_only(outfile, params, vocab, special_vocab, + endianess=endianess, pad_vocab=args.pad_vocab) + print(f"Wrote {outfile}") + return + + if model_plus.vocab is not None and args.vocab_dir is None: + vocab = model_plus.vocab + + print(f"Vocab info: {vocab}") + print(f"Special vocab info: {special_vocab}") + + model = model_plus.model + model = convert_model_names(model, params) + ftype = pick_output_type(model, args.outtype) + model = convert_to_output_type(model, ftype) + outfile = args.outfile or default_outfile(model_plus.paths, ftype) + + params.ftype = ftype + print(f"Writing {outfile}, format {ftype}") + + OutputFile.write_all(outfile, ftype, params, model, vocab, special_vocab, + concurrency=args.concurrency, endianess=endianess, pad_vocab=args.pad_vocab) + print(f"Wrote {outfile}") + + +if __name__ == '__main__': + main() diff --git a/extensions/model-extension/scripts/gguf-py/LICENSE b/extensions/model-extension/scripts/gguf-py/LICENSE new file mode 100644 index 000000000..76f67efdc --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Georgi Gerganov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/extensions/model-extension/scripts/gguf-py/README.md b/extensions/model-extension/scripts/gguf-py/README.md new file mode 100644 index 000000000..22d7ffa52 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/README.md @@ -0,0 +1,81 @@ +## gguf + +This is a Python package for writing binary files in the [GGUF](https://github.com/ggerganov/ggml/pull/302) +(GGML Universal File) format. + +See [convert-llama-hf-to-gguf.py](https://github.com/ggerganov/llama.cpp/blob/master/convert-hf-to-gguf.py) +as an example for its usage. + +## Installation +```sh +pip install gguf +``` + +## API Examples/Simple Tools + +[examples/writer.py](https://github.com/ggerganov/llama.cpp/blob/master/gguf-py/examples/writer.py) — Generates `example.gguf` in the current directory to demonstrate generating a GGUF file. Note that this file cannot be used as a model. + +[scripts/gguf-dump.py](https://github.com/ggerganov/llama.cpp/blob/master/gguf-py/scripts/gguf-dump.py) — Dumps a GGUF file's metadata to the console. + +[scripts/gguf-set-metadata.py](https://github.com/ggerganov/llama.cpp/blob/master/gguf-py/scripts/gguf-set-metadata.py) — Allows changing simple metadata values in a GGUF file by key. + +[scripts/gguf-convert-endian.py](https://github.com/ggerganov/llama.cpp/blob/master/gguf-py/scripts/gguf-convert-endian.py) — Allows converting the endianness of GGUF files. + +## Development +Maintainers who participate in development of this package are advised to install it in editable mode: + +```sh +cd /path/to/llama.cpp/gguf-py + +pip install --editable . +``` + +**Note**: This may require to upgrade your Pip installation, with a message saying that editable installation currently requires `setup.py`. +In this case, upgrade Pip to the latest: + +```sh +pip install --upgrade pip +``` + +## Automatic publishing with CI + +There's a GitHub workflow to make a release automatically upon creation of tags in a specified format. + +1. Bump the version in `pyproject.toml`. +2. Create a tag named `gguf-vx.x.x` where `x.x.x` is the semantic version number. + +```sh +git tag -a gguf-v1.0.0 -m "Version 1.0 release" +``` + +3. Push the tags. + +```sh +git push origin --tags +``` + +## Manual publishing +If you want to publish the package manually for any reason, you need to have `twine` and `build` installed: + +```sh +pip install build twine +``` + +Then, follow these steps to release a new version: + +1. Bump the version in `pyproject.toml`. +2. Build the package: + +```sh +python -m build +``` + +3. Upload the generated distribution archives: + +```sh +python -m twine upload dist/* +``` + +## TODO +- [ ] Add tests +- [ ] Include conversion scripts as command line entry points in this package. diff --git a/extensions/model-extension/scripts/gguf-py/examples/writer.py b/extensions/model-extension/scripts/gguf-py/examples/writer.py new file mode 100755 index 000000000..f39eed1af --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/examples/writer.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python3 +import sys +from pathlib import Path + +import numpy as np + +# Necessary to load the local gguf package +sys.path.insert(0, str(Path(__file__).parent.parent)) + +from gguf import GGUFWriter # noqa: E402 + + +# Example usage: +def writer_example() -> None: + # Example usage with a file + gguf_writer = GGUFWriter("example.gguf", "llama") + + gguf_writer.add_architecture() + gguf_writer.add_block_count(12) + gguf_writer.add_uint32("answer", 42) # Write a 32-bit integer + gguf_writer.add_float32("answer_in_float", 42.0) # Write a 32-bit float + gguf_writer.add_custom_alignment(64) + + tensor1 = np.ones((32,), dtype=np.float32) * 100.0 + tensor2 = np.ones((64,), dtype=np.float32) * 101.0 + tensor3 = np.ones((96,), dtype=np.float32) * 102.0 + + gguf_writer.add_tensor("tensor1", tensor1) + gguf_writer.add_tensor("tensor2", tensor2) + gguf_writer.add_tensor("tensor3", tensor3) + + gguf_writer.write_header_to_file() + gguf_writer.write_kv_data_to_file() + gguf_writer.write_tensors_to_file() + + gguf_writer.close() + + +if __name__ == '__main__': + writer_example() diff --git a/extensions/model-extension/scripts/gguf-py/gguf/__init__.py b/extensions/model-extension/scripts/gguf-py/gguf/__init__.py new file mode 100644 index 000000000..110ab342c --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/__init__.py @@ -0,0 +1,5 @@ +from .constants import * +from .gguf_reader import * +from .gguf_writer import * +from .tensor_mapping import * +from .vocab import * diff --git a/extensions/model-extension/scripts/gguf-py/gguf/constants.py b/extensions/model-extension/scripts/gguf-py/gguf/constants.py new file mode 100644 index 000000000..1cfd41c0b --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/constants.py @@ -0,0 +1,665 @@ +from __future__ import annotations + +import sys +from enum import Enum, IntEnum, auto +from typing import Any + +# +# constants +# + +GGUF_MAGIC = 0x46554747 # "GGUF" +GGUF_VERSION = 3 +GGUF_DEFAULT_ALIGNMENT = 32 + +# +# metadata keys +# + + +class Keys: + class General: + ARCHITECTURE = "general.architecture" + QUANTIZATION_VERSION = "general.quantization_version" + ALIGNMENT = "general.alignment" + NAME = "general.name" + AUTHOR = "general.author" + URL = "general.url" + DESCRIPTION = "general.description" + LICENSE = "general.license" + SOURCE_URL = "general.source.url" + SOURCE_HF_REPO = "general.source.huggingface.repository" + FILE_TYPE = "general.file_type" + + class LLM: + CONTEXT_LENGTH = "{arch}.context_length" + EMBEDDING_LENGTH = "{arch}.embedding_length" + BLOCK_COUNT = "{arch}.block_count" + FEED_FORWARD_LENGTH = "{arch}.feed_forward_length" + USE_PARALLEL_RESIDUAL = "{arch}.use_parallel_residual" + TENSOR_DATA_LAYOUT = "{arch}.tensor_data_layout" + EXPERT_COUNT = "{arch}.expert_count" + EXPERT_USED_COUNT = "{arch}.expert_used_count" + + class Attention: + HEAD_COUNT = "{arch}.attention.head_count" + HEAD_COUNT_KV = "{arch}.attention.head_count_kv" + MAX_ALIBI_BIAS = "{arch}.attention.max_alibi_bias" + CLAMP_KQV = "{arch}.attention.clamp_kqv" + KEY_LENGTH = "{arch}.attention.key_length" + VALUE_LENGTH = "{arch}.attention.value_length" + LAYERNORM_EPS = "{arch}.attention.layer_norm_epsilon" + LAYERNORM_RMS_EPS = "{arch}.attention.layer_norm_rms_epsilon" + + class Rope: + DIMENSION_COUNT = "{arch}.rope.dimension_count" + FREQ_BASE = "{arch}.rope.freq_base" + SCALING_TYPE = "{arch}.rope.scaling.type" + SCALING_FACTOR = "{arch}.rope.scaling.factor" + SCALING_ORIG_CTX_LEN = "{arch}.rope.scaling.original_context_length" + SCALING_FINETUNED = "{arch}.rope.scaling.finetuned" + + class Tokenizer: + MODEL = "tokenizer.ggml.model" + LIST = "tokenizer.ggml.tokens" + TOKEN_TYPE = "tokenizer.ggml.token_type" + SCORES = "tokenizer.ggml.scores" + MERGES = "tokenizer.ggml.merges" + BOS_ID = "tokenizer.ggml.bos_token_id" + EOS_ID = "tokenizer.ggml.eos_token_id" + UNK_ID = "tokenizer.ggml.unknown_token_id" + SEP_ID = "tokenizer.ggml.seperator_token_id" + PAD_ID = "tokenizer.ggml.padding_token_id" + ADD_BOS = "tokenizer.ggml.add_bos_token" + ADD_EOS = "tokenizer.ggml.add_eos_token" + ADD_PREFIX = "tokenizer.ggml.add_space_prefix" + HF_JSON = "tokenizer.huggingface.json" + RWKV = "tokenizer.rwkv.world" + CHAT_TEMPLATE = "tokenizer.chat_template" + + +# +# recommended mapping of model tensor names for storage in gguf +# + + +class MODEL_ARCH(IntEnum): + LLAMA = auto() + FALCON = auto() + BAICHUAN = auto() + GPT2 = auto() + GPTJ = auto() + GPTNEOX = auto() + MPT = auto() + STARCODER = auto() + PERSIMMON = auto() + REFACT = auto() + BERT = auto() + BLOOM = auto() + STABLELM = auto() + QWEN = auto() + QWEN2 = auto() + PHI2 = auto() + PLAMO = auto() + CODESHELL = auto() + ORION = auto() + INTERNLM2 = auto() + MINICPM = auto() + + +class MODEL_TENSOR(IntEnum): + TOKEN_EMBD = auto() + TOKEN_EMBD_NORM = auto() + TOKEN_TYPES = auto() + POS_EMBD = auto() + OUTPUT = auto() + OUTPUT_NORM = auto() + ROPE_FREQS = auto() + ATTN_Q = auto() + ATTN_K = auto() + ATTN_V = auto() + ATTN_QKV = auto() + ATTN_OUT = auto() + ATTN_NORM = auto() + ATTN_NORM_2 = auto() + ATTN_ROT_EMBD = auto() + FFN_GATE_INP = auto() + FFN_NORM = auto() + FFN_GATE = auto() + FFN_DOWN = auto() + FFN_UP = auto() + FFN_ACT = auto() + FFN_GATE_EXP = auto() + FFN_DOWN_EXP = auto() + FFN_UP_EXP = auto() + ATTN_Q_NORM = auto() + ATTN_K_NORM = auto() + + +MODEL_ARCH_NAMES: dict[MODEL_ARCH, str] = { + MODEL_ARCH.LLAMA: "llama", + MODEL_ARCH.FALCON: "falcon", + MODEL_ARCH.BAICHUAN: "baichuan", + MODEL_ARCH.GPT2: "gpt2", + MODEL_ARCH.GPTJ: "gptj", + MODEL_ARCH.GPTNEOX: "gptneox", + MODEL_ARCH.MPT: "mpt", + MODEL_ARCH.STARCODER: "starcoder", + MODEL_ARCH.PERSIMMON: "persimmon", + MODEL_ARCH.REFACT: "refact", + MODEL_ARCH.BERT: "bert", + MODEL_ARCH.BLOOM: "bloom", + MODEL_ARCH.STABLELM: "stablelm", + MODEL_ARCH.QWEN: "qwen", + MODEL_ARCH.QWEN2: "qwen2", + MODEL_ARCH.PHI2: "phi2", + MODEL_ARCH.PLAMO: "plamo", + MODEL_ARCH.CODESHELL: "codeshell", + MODEL_ARCH.ORION: "orion", + MODEL_ARCH.INTERNLM2: "internlm2", + MODEL_ARCH.MINICPM: "minicpm", +} + +TENSOR_NAMES: dict[MODEL_TENSOR, str] = { + MODEL_TENSOR.TOKEN_EMBD: "token_embd", + MODEL_TENSOR.TOKEN_EMBD_NORM: "token_embd_norm", + MODEL_TENSOR.TOKEN_TYPES: "token_types", + MODEL_TENSOR.POS_EMBD: "position_embd", + MODEL_TENSOR.OUTPUT_NORM: "output_norm", + MODEL_TENSOR.OUTPUT: "output", + MODEL_TENSOR.ROPE_FREQS: "rope_freqs", + MODEL_TENSOR.ATTN_NORM: "blk.{bid}.attn_norm", + MODEL_TENSOR.ATTN_NORM_2: "blk.{bid}.attn_norm_2", + MODEL_TENSOR.ATTN_QKV: "blk.{bid}.attn_qkv", + MODEL_TENSOR.ATTN_Q: "blk.{bid}.attn_q", + MODEL_TENSOR.ATTN_K: "blk.{bid}.attn_k", + MODEL_TENSOR.ATTN_V: "blk.{bid}.attn_v", + MODEL_TENSOR.ATTN_OUT: "blk.{bid}.attn_output", + MODEL_TENSOR.ATTN_ROT_EMBD: "blk.{bid}.attn_rot_embd", + MODEL_TENSOR.ATTN_Q_NORM: "blk.{bid}.attn_q_norm", + MODEL_TENSOR.ATTN_K_NORM: "blk.{bid}.attn_k_norm", + MODEL_TENSOR.FFN_GATE_INP: "blk.{bid}.ffn_gate_inp", + MODEL_TENSOR.FFN_NORM: "blk.{bid}.ffn_norm", + MODEL_TENSOR.FFN_GATE: "blk.{bid}.ffn_gate", + MODEL_TENSOR.FFN_DOWN: "blk.{bid}.ffn_down", + MODEL_TENSOR.FFN_UP: "blk.{bid}.ffn_up", + MODEL_TENSOR.FFN_ACT: "blk.{bid}.ffn", + MODEL_TENSOR.FFN_GATE_EXP: "blk.{bid}.ffn_gate.{xid}", + MODEL_TENSOR.FFN_DOWN_EXP: "blk.{bid}.ffn_down.{xid}", + MODEL_TENSOR.FFN_UP_EXP: "blk.{bid}.ffn_up.{xid}", +} + +MODEL_TENSORS: dict[MODEL_ARCH, list[MODEL_TENSOR]] = { + MODEL_ARCH.LLAMA: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_GATE_INP, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + MODEL_TENSOR.FFN_GATE_EXP, + MODEL_TENSOR.FFN_DOWN_EXP, + MODEL_TENSOR.FFN_UP_EXP, + ], + MODEL_ARCH.GPTNEOX: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.FALCON: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_NORM_2, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.BAICHUAN: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.STARCODER: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.POS_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.BERT: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.TOKEN_TYPES, + MODEL_TENSOR.POS_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.MPT: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + MODEL_TENSOR.FFN_ACT, + ], + MODEL_ARCH.GPTJ: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.PERSIMMON: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + MODEL_TENSOR.ATTN_Q_NORM, + MODEL_TENSOR.ATTN_K_NORM, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], + MODEL_ARCH.REFACT: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.BLOOM: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.TOKEN_EMBD_NORM, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.STABLELM: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.QWEN: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.QWEN2: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.PLAMO: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.GPT2: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.POS_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.PHI2: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.CODESHELL: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.POS_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_QKV, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.ORION: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.INTERNLM2: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.OUTPUT, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + ], + MODEL_ARCH.MINICPM: [ + MODEL_TENSOR.TOKEN_EMBD, + MODEL_TENSOR.OUTPUT_NORM, + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_NORM, + MODEL_TENSOR.ATTN_Q, + MODEL_TENSOR.ATTN_K, + MODEL_TENSOR.ATTN_V, + MODEL_TENSOR.ATTN_OUT, + MODEL_TENSOR.ATTN_ROT_EMBD, + MODEL_TENSOR.FFN_GATE_INP, + MODEL_TENSOR.FFN_NORM, + MODEL_TENSOR.FFN_GATE, + MODEL_TENSOR.FFN_DOWN, + MODEL_TENSOR.FFN_UP, + MODEL_TENSOR.FFN_GATE_EXP, + MODEL_TENSOR.FFN_DOWN_EXP, + MODEL_TENSOR.FFN_UP_EXP, + ], + # TODO +} + +# tensors that will not be serialized +MODEL_TENSOR_SKIP: dict[MODEL_ARCH, list[MODEL_TENSOR]] = { + MODEL_ARCH.LLAMA: [ + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], + MODEL_ARCH.BAICHUAN: [ + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], + MODEL_ARCH.PERSIMMON: [ + MODEL_TENSOR.ROPE_FREQS, + ], + MODEL_ARCH.QWEN: [ + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], + MODEL_ARCH.CODESHELL: [ + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], + MODEL_ARCH.ORION: [ + MODEL_TENSOR.ROPE_FREQS, + MODEL_TENSOR.ATTN_ROT_EMBD, + ], +} + +# +# types +# + + +class TokenType(IntEnum): + NORMAL = 1 + UNKNOWN = 2 + CONTROL = 3 + USER_DEFINED = 4 + UNUSED = 5 + BYTE = 6 + + +class RopeScalingType(Enum): + NONE = 'none' + LINEAR = 'linear' + YARN = 'yarn' + + +class GGMLQuantizationType(IntEnum): + F32 = 0 + F16 = 1 + Q4_0 = 2 + Q4_1 = 3 + Q5_0 = 6 + Q5_1 = 7 + Q8_0 = 8 + Q8_1 = 9 + Q2_K = 10 + Q3_K = 11 + Q4_K = 12 + Q5_K = 13 + Q6_K = 14 + Q8_K = 15 + + +class GGUFEndian(IntEnum): + LITTLE = 0 + BIG = 1 + + +class GGUFValueType(IntEnum): + UINT8 = 0 + INT8 = 1 + UINT16 = 2 + INT16 = 3 + UINT32 = 4 + INT32 = 5 + FLOAT32 = 6 + BOOL = 7 + STRING = 8 + ARRAY = 9 + UINT64 = 10 + INT64 = 11 + FLOAT64 = 12 + + @staticmethod + def get_type(val: Any) -> GGUFValueType: + if isinstance(val, (str, bytes, bytearray)): + return GGUFValueType.STRING + elif isinstance(val, list): + return GGUFValueType.ARRAY + elif isinstance(val, float): + return GGUFValueType.FLOAT32 + elif isinstance(val, bool): + return GGUFValueType.BOOL + elif isinstance(val, int): + return GGUFValueType.INT32 + # TODO: need help with 64-bit types in Python + else: + print("Unknown type:", type(val)) + sys.exit() + + +# Note: Does not support GGML_QKK_64 +QK_K = 256 +# Items here are (block size, type size) +GGML_QUANT_SIZES = { + GGMLQuantizationType.F32: (1, 4), + GGMLQuantizationType.F16: (1, 2), + GGMLQuantizationType.Q4_0: (32, 2 + 16), + GGMLQuantizationType.Q4_1: (32, 2 + 2 + 16), + GGMLQuantizationType.Q5_0: (32, 2 + 4 + 16), + GGMLQuantizationType.Q5_1: (32, 2 + 2 + 4 + 16), + GGMLQuantizationType.Q8_0: (32, 2 + 32), + GGMLQuantizationType.Q8_1: (32, 4 + 4 + 32), + GGMLQuantizationType.Q2_K: (256, 2 + 2 + QK_K // 16 + QK_K // 4), + GGMLQuantizationType.Q3_K: (256, 2 + QK_K // 4 + QK_K // 8 + 12), + GGMLQuantizationType.Q4_K: (256, 2 + 2 + QK_K // 2 + 12), + GGMLQuantizationType.Q5_K: (256, 2 + 2 + QK_K // 2 + QK_K // 8 + 12), + GGMLQuantizationType.Q6_K: (256, 2 + QK_K // 2 + QK_K // 4 + QK_K // 16), + GGMLQuantizationType.Q8_K: (256, 4 + QK_K + QK_K // 8), +} + + +# Aliases for backward compatibility. + +# general +KEY_GENERAL_ARCHITECTURE = Keys.General.ARCHITECTURE +KEY_GENERAL_QUANTIZATION_VERSION = Keys.General.QUANTIZATION_VERSION +KEY_GENERAL_ALIGNMENT = Keys.General.ALIGNMENT +KEY_GENERAL_NAME = Keys.General.NAME +KEY_GENERAL_AUTHOR = Keys.General.AUTHOR +KEY_GENERAL_URL = Keys.General.URL +KEY_GENERAL_DESCRIPTION = Keys.General.DESCRIPTION +KEY_GENERAL_LICENSE = Keys.General.LICENSE +KEY_GENERAL_SOURCE_URL = Keys.General.SOURCE_URL +KEY_GENERAL_SOURCE_HF_REPO = Keys.General.SOURCE_HF_REPO +KEY_GENERAL_FILE_TYPE = Keys.General.FILE_TYPE + +# LLM +KEY_CONTEXT_LENGTH = Keys.LLM.CONTEXT_LENGTH +KEY_EMBEDDING_LENGTH = Keys.LLM.EMBEDDING_LENGTH +KEY_BLOCK_COUNT = Keys.LLM.BLOCK_COUNT +KEY_FEED_FORWARD_LENGTH = Keys.LLM.FEED_FORWARD_LENGTH +KEY_USE_PARALLEL_RESIDUAL = Keys.LLM.USE_PARALLEL_RESIDUAL +KEY_TENSOR_DATA_LAYOUT = Keys.LLM.TENSOR_DATA_LAYOUT + +# attention +KEY_ATTENTION_HEAD_COUNT = Keys.Attention.HEAD_COUNT +KEY_ATTENTION_HEAD_COUNT_KV = Keys.Attention.HEAD_COUNT_KV +KEY_ATTENTION_MAX_ALIBI_BIAS = Keys.Attention.MAX_ALIBI_BIAS +KEY_ATTENTION_CLAMP_KQV = Keys.Attention.CLAMP_KQV +KEY_ATTENTION_LAYERNORM_EPS = Keys.Attention.LAYERNORM_EPS +KEY_ATTENTION_LAYERNORM_RMS_EPS = Keys.Attention.LAYERNORM_RMS_EPS + +# RoPE +KEY_ROPE_DIMENSION_COUNT = Keys.Rope.DIMENSION_COUNT +KEY_ROPE_FREQ_BASE = Keys.Rope.FREQ_BASE +KEY_ROPE_SCALING_TYPE = Keys.Rope.SCALING_TYPE +KEY_ROPE_SCALING_FACTOR = Keys.Rope.SCALING_FACTOR +KEY_ROPE_SCALING_ORIG_CTX_LEN = Keys.Rope.SCALING_ORIG_CTX_LEN +KEY_ROPE_SCALING_FINETUNED = Keys.Rope.SCALING_FINETUNED + +# tokenization +KEY_TOKENIZER_MODEL = Keys.Tokenizer.MODEL +KEY_TOKENIZER_LIST = Keys.Tokenizer.LIST +KEY_TOKENIZER_TOKEN_TYPE = Keys.Tokenizer.TOKEN_TYPE +KEY_TOKENIZER_SCORES = Keys.Tokenizer.SCORES +KEY_TOKENIZER_MERGES = Keys.Tokenizer.MERGES +KEY_TOKENIZER_BOS_ID = Keys.Tokenizer.BOS_ID +KEY_TOKENIZER_EOS_ID = Keys.Tokenizer.EOS_ID +KEY_TOKENIZER_UNK_ID = Keys.Tokenizer.UNK_ID +KEY_TOKENIZER_SEP_ID = Keys.Tokenizer.SEP_ID +KEY_TOKENIZER_PAD_ID = Keys.Tokenizer.PAD_ID +KEY_TOKENIZER_HF_JSON = Keys.Tokenizer.HF_JSON +KEY_TOKENIZER_RWKV = Keys.Tokenizer.RWKV diff --git a/extensions/model-extension/scripts/gguf-py/gguf/gguf.py b/extensions/model-extension/scripts/gguf-py/gguf/gguf.py new file mode 100644 index 000000000..651a81eb8 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/gguf.py @@ -0,0 +1,15 @@ +# This file left for compatibility. If you want to use the GGUF API from Python +# then don't import gguf/gguf.py directly. If you're looking for examples, see the +# examples/ directory for gguf-py + +import importlib +import sys +from pathlib import Path + +sys.path.insert(0, str(Path(__file__).parent.parent)) + +# Compatibility for people trying to import gguf/gguf.py directly instead of as a package. +importlib.invalidate_caches() +import gguf # noqa: E402 + +importlib.reload(gguf) diff --git a/extensions/model-extension/scripts/gguf-py/gguf/gguf_reader.py b/extensions/model-extension/scripts/gguf-py/gguf/gguf_reader.py new file mode 100644 index 000000000..5b6d4ba6b --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/gguf_reader.py @@ -0,0 +1,264 @@ +# +# GGUF file reading/modification support. For API usage information, +# please see the files scripts/ for some fairly simple examples. +# +from __future__ import annotations + +import os +from collections import OrderedDict +from typing import Any, Literal, NamedTuple, TypeVar, Union + +import numpy as np +import numpy.typing as npt + +if __name__ == "__main__": + import sys + from pathlib import Path + + # Allow running file in package as a script. + sys.path.insert(0, str(Path(__file__).parent.parent)) + +from gguf.constants import ( + GGML_QUANT_SIZES, + GGUF_DEFAULT_ALIGNMENT, + GGUF_MAGIC, + GGUF_VERSION, + GGMLQuantizationType, + GGUFValueType, +) + + +READER_SUPPORTED_VERSIONS = [2, GGUF_VERSION] + + +class ReaderField(NamedTuple): + # Offset to start of this field. + offset: int + + # Name of the field (not necessarily from file data). + name: str + + # Data parts. Some types have multiple components, such as strings + # that consist of a length followed by the string data. + parts: list[npt.NDArray[Any]] = [] + + # Indexes into parts that we can call the actual data. For example + # an array of strings will be populated with indexes to the actual + # string data. + data: list[int] = [-1] + + types: list[GGUFValueType] = [] + + +class ReaderTensor(NamedTuple): + name: str + tensor_type: GGMLQuantizationType + shape: npt.NDArray[np.uint32] + n_elements: int + n_bytes: int + data_offset: int + data: npt.NDArray[Any] + field: ReaderField + + +class GGUFReader: + # I - same as host, S - swapped + byte_order: Literal['I' | 'S'] = 'I' + alignment: int = GGUF_DEFAULT_ALIGNMENT + + # Note: Internal helper, API may change. + gguf_scalar_to_np: dict[GGUFValueType, type[np.generic]] = { + GGUFValueType.UINT8: np.uint8, + GGUFValueType.INT8: np.int8, + GGUFValueType.UINT16: np.uint16, + GGUFValueType.INT16: np.int16, + GGUFValueType.UINT32: np.uint32, + GGUFValueType.INT32: np.int32, + GGUFValueType.FLOAT32: np.float32, + GGUFValueType.UINT64: np.uint64, + GGUFValueType.INT64: np.int64, + GGUFValueType.FLOAT64: np.float64, + GGUFValueType.BOOL: np.bool_, + } + + def __init__(self, path: os.PathLike[str] | str, mode: Literal['r' | 'r+' | 'c'] = 'r'): + self.data = np.memmap(path, mode = mode) + offs = 0 + if self._get(offs, np.uint32, override_order = '<')[0] != GGUF_MAGIC: + raise ValueError('GGUF magic invalid') + offs += 4 + temp_version = self._get(offs, np.uint32) + if temp_version[0] & 65535 == 0: + # If we get 0 here that means it's (probably) a GGUF file created for + # the opposite byte order of the machine this script is running on. + self.byte_order = 'S' + temp_version = temp_version.newbyteorder(self.byte_order) + version = temp_version[0] + if version not in READER_SUPPORTED_VERSIONS: + raise ValueError(f'Sorry, file appears to be version {version} which we cannot handle') + self.fields: OrderedDict[str, ReaderField] = OrderedDict() + self.tensors: list[ReaderTensor] = [] + offs += self._push_field(ReaderField(offs, 'GGUF.version', [temp_version], [0], [GGUFValueType.UINT32])) + temp_counts = self._get(offs, np.uint64, 2) + offs += self._push_field(ReaderField(offs, 'GGUF.tensor_count', [temp_counts[:1]], [0], [GGUFValueType.UINT64])) + offs += self._push_field(ReaderField(offs, 'GGUF.kv_count', [temp_counts[1:]], [0], [GGUFValueType.UINT64])) + tensor_count, kv_count = temp_counts + offs = self._build_fields(offs, kv_count) + offs, tensors_fields = self._build_tensors_fields(offs, tensor_count) + new_align = self.fields.get('general.alignment') + if new_align is not None: + if new_align.types != [GGUFValueType.UINT32]: + raise ValueError('Bad type for general.alignment field') + self.alignment = new_align.parts[-1][0] + padding = offs % self.alignment + if padding != 0: + offs += self.alignment - padding + self._build_tensors(offs, tensors_fields) + + _DT = TypeVar('_DT', bound = npt.DTypeLike) + + # Fetch a key/value metadata field by key. + def get_field(self, key: str) -> Union[ReaderField, None]: + return self.fields.get(key, None) + + # Fetch a tensor from the list by index. + def get_tensor(self, idx: int) -> ReaderTensor: + return self.tensors[idx] + + def _get( + self, offset: int, dtype: npt.DTypeLike, count: int = 1, override_order: None | Literal['I' | 'S' | '<'] = None, + ) -> npt.NDArray[Any]: + count = int(count) + itemsize = int(np.empty([], dtype = dtype).itemsize) + end_offs = offset + itemsize * count + return ( + self.data[offset:end_offs] + .view(dtype = dtype)[:count] + .newbyteorder(override_order or self.byte_order) + ) + + def _push_field(self, field: ReaderField, skip_sum: bool = False) -> int: + if field.name in self.fields: + raise KeyError(f'Duplicate {field.name} already in list at offset {field.offset}') + self.fields[field.name] = field + return 0 if skip_sum else sum(int(part.nbytes) for part in field.parts) + + def _get_str(self, offset: int) -> tuple[npt.NDArray[np.uint64], npt.NDArray[np.uint8]]: + slen = self._get(offset, np.uint64) + return slen, self._get(offset + 8, np.uint8, slen[0]) + + def _get_field_parts( + self, orig_offs: int, raw_type: int, + ) -> tuple[int, list[npt.NDArray[Any]], list[int], list[GGUFValueType]]: + offs = orig_offs + types: list[GGUFValueType] = [] + gtype = GGUFValueType(raw_type) + types.append(gtype) + # Handle strings. + if gtype == GGUFValueType.STRING: + sparts: list[npt.NDArray[Any]] = list(self._get_str(offs)) + size = sum(int(part.nbytes) for part in sparts) + return size, sparts, [1], types + # Check if it's a simple scalar type. + nptype = self.gguf_scalar_to_np.get(gtype) + if nptype is not None: + val = self._get(offs, nptype) + return int(val.nbytes), [val], [0], types + # Handle arrays. + if gtype == GGUFValueType.ARRAY: + raw_itype = self._get(offs, np.uint32) + offs += int(raw_itype.nbytes) + alen = self._get(offs, np.uint64) + offs += int(alen.nbytes) + aparts: list[npt.NDArray[Any]] = [raw_itype, alen] + data_idxs: list[int] = [] + for idx in range(alen[0]): + curr_size, curr_parts, curr_idxs, curr_types = self._get_field_parts(offs, raw_itype[0]) + if idx == 0: + types += curr_types + idxs_offs = len(aparts) + aparts += curr_parts + data_idxs += (idx + idxs_offs for idx in curr_idxs) + offs += curr_size + return offs - orig_offs, aparts, data_idxs, types + # We can't deal with this one. + raise ValueError('Unknown/unhandled field type {gtype}') + + def _get_tensor(self, orig_offs: int) -> ReaderField: + offs = orig_offs + name_len, name_data = self._get_str(offs) + offs += int(name_len.nbytes + name_data.nbytes) + n_dims = self._get(offs, np.uint32) + offs += int(n_dims.nbytes) + dims = self._get(offs, np.uint64, n_dims[0]) + offs += int(dims.nbytes) + raw_dtype = self._get(offs, np.uint32) + offs += int(raw_dtype.nbytes) + offset_tensor = self._get(offs, np.uint64) + offs += int(offset_tensor.nbytes) + return ReaderField( + orig_offs, + str(bytes(name_data), encoding = 'utf-8'), + [name_len, name_data, n_dims, dims, raw_dtype, offset_tensor], + [1, 3, 4, 5], + ) + + def _build_fields(self, offs: int, count: int) -> int: + for _ in range(count): + orig_offs = offs + kv_klen, kv_kdata = self._get_str(offs) + offs += int(kv_klen.nbytes + kv_kdata.nbytes) + raw_kv_type = self._get(offs, np.uint32) + offs += int(raw_kv_type.nbytes) + parts: list[npt.NDArray[Any]] = [kv_klen, kv_kdata, raw_kv_type] + idxs_offs = len(parts) + field_size, field_parts, field_idxs, field_types = self._get_field_parts(offs, raw_kv_type[0]) + parts += field_parts + self._push_field(ReaderField( + orig_offs, + str(bytes(kv_kdata), encoding = 'utf-8'), + parts, + [idx + idxs_offs for idx in field_idxs], + field_types, + ), skip_sum = True) + offs += field_size + return offs + + def _build_tensors_fields(self, offs: int, count: int) -> tuple[int, list[ReaderField]]: + tensor_fields = [] + for _ in range(count): + field = self._get_tensor(offs) + offs += sum(int(part.nbytes) for part in field.parts) + tensor_fields.append(field) + return offs, tensor_fields + + def _build_tensors(self, start_offs: int, fields: list[ReaderField]) -> None: + tensors = [] + for field in fields: + _name_len, name_data, _n_dims, dims, raw_dtype, offset_tensor = field.parts + ggml_type = GGMLQuantizationType(raw_dtype[0]) + n_elems = np.prod(dims) + block_size, type_size = GGML_QUANT_SIZES[ggml_type] + n_bytes = n_elems * type_size // block_size + data_offs = int(start_offs + offset_tensor[0]) + item_type: npt.DTypeLike + if ggml_type == GGMLQuantizationType.F32: + item_count = n_elems + item_type = np.float32 + elif ggml_type == GGMLQuantizationType.F16: + item_count = n_elems + item_type = np.float16 + else: + item_count = n_bytes + item_type = np.uint8 + tensors.append(ReaderTensor( + name = str(bytes(name_data), encoding = 'utf-8'), + tensor_type = ggml_type, + shape = dims, + n_elements = n_elems, + n_bytes = n_bytes, + data_offset = data_offs, + data = self._get(data_offs, item_type, item_count), + field = field, + )) + self.tensors = tensors diff --git a/extensions/model-extension/scripts/gguf-py/gguf/gguf_writer.py b/extensions/model-extension/scripts/gguf-py/gguf/gguf_writer.py new file mode 100644 index 000000000..16808196e --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/gguf_writer.py @@ -0,0 +1,427 @@ +from __future__ import annotations + +import os +import shutil +import struct +import tempfile +from enum import Enum, auto +from io import BufferedWriter +from typing import IO, Any, Sequence + +import numpy as np + +from .constants import ( + GGUF_DEFAULT_ALIGNMENT, + GGUF_MAGIC, + GGUF_VERSION, + GGMLQuantizationType, + GGUFEndian, + GGUFValueType, + Keys, + RopeScalingType, + TokenType, +) + + +class WriterState(Enum): + EMPTY = auto() + HEADER = auto() + KV_DATA = auto() + TI_DATA = auto() + + +class GGUFWriter: + fout: BufferedWriter + temp_file: tempfile.SpooledTemporaryFile[bytes] | None + tensors: list[np.ndarray[Any, Any]] + _simple_value_packing = { + GGUFValueType.UINT8: "B", + GGUFValueType.INT8: "b", + GGUFValueType.UINT16: "H", + GGUFValueType.INT16: "h", + GGUFValueType.UINT32: "I", + GGUFValueType.INT32: "i", + GGUFValueType.FLOAT32: "f", + GGUFValueType.UINT64: "Q", + GGUFValueType.INT64: "q", + GGUFValueType.FLOAT64: "d", + GGUFValueType.BOOL: "?", + } + + def __init__( + self, path: os.PathLike[str] | str, arch: str, use_temp_file: bool = True, + endianess: GGUFEndian = GGUFEndian.LITTLE, + ): + self.fout = open(path, "wb") + self.arch = arch + self.endianess = endianess + self.offset_tensor = 0 + self.data_alignment = GGUF_DEFAULT_ALIGNMENT + self.kv_data = bytearray() + self.kv_data_count = 0 + self.ti_data = bytearray() + self.ti_data_count = 0 + self.use_temp_file = use_temp_file + self.temp_file = None + self.tensors = [] + print("gguf: This GGUF file is for {0} Endian only".format( + "Big" if self.endianess == GGUFEndian.BIG else "Little", + )) + self.state = WriterState.EMPTY + + self.add_architecture() + + def write_header_to_file(self) -> None: + if self.state is not WriterState.EMPTY: + raise ValueError(f'Expected output file to be empty, got {self.state}') + + self._write_packed(" None: + if self.state is not WriterState.HEADER: + raise ValueError(f'Expected output file to contain the header, got {self.state}') + + self.fout.write(self.kv_data) + self.flush() + self.state = WriterState.KV_DATA + + def write_ti_data_to_file(self) -> None: + if self.state is not WriterState.KV_DATA: + raise ValueError(f'Expected output file to contain KV data, got {self.state}') + + self.fout.write(self.ti_data) + self.flush() + self.state = WriterState.TI_DATA + + def add_key(self, key: str) -> None: + self.add_val(key, GGUFValueType.STRING, add_vtype=False) + + def add_uint8(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.UINT8) + + def add_int8(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.INT8) + + def add_uint16(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.UINT16) + + def add_int16(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.INT16) + + def add_uint32(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.UINT32) + + def add_int32(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.INT32) + + def add_float32(self, key: str, val: float) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.FLOAT32) + + def add_uint64(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.UINT64) + + def add_int64(self, key: str, val: int) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.INT64) + + def add_float64(self, key: str, val: float) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.FLOAT64) + + def add_bool(self, key: str, val: bool) -> None: + self.add_key(key) + self.add_val(val, GGUFValueType.BOOL) + + def add_string(self, key: str, val: str) -> None: + if not val: + return + self.add_key(key) + self.add_val(val, GGUFValueType.STRING) + + def add_array(self, key: str, val: Sequence[Any]) -> None: + if not isinstance(val, Sequence): + raise ValueError("Value must be a sequence for array type") + + self.add_key(key) + self.add_val(val, GGUFValueType.ARRAY) + + def add_val(self, val: Any, vtype: GGUFValueType | None = None, add_vtype: bool = True) -> None: + if vtype is None: + vtype = GGUFValueType.get_type(val) + + if add_vtype: + self.kv_data += self._pack("I", vtype) + self.kv_data_count += 1 + + pack_fmt = self._simple_value_packing.get(vtype) + if pack_fmt is not None: + self.kv_data += self._pack(pack_fmt, val, skip_pack_prefix = vtype == GGUFValueType.BOOL) + elif vtype == GGUFValueType.STRING: + encoded_val = val.encode("utf8") if isinstance(val, str) else val + self.kv_data += self._pack("Q", len(encoded_val)) + self.kv_data += encoded_val + elif vtype == GGUFValueType.ARRAY and isinstance(val, Sequence) and val: + ltype = GGUFValueType.get_type(val[0]) + if not all(GGUFValueType.get_type(i) is ltype for i in val[1:]): + raise ValueError("All items in a GGUF array should be of the same type") + self.kv_data += self._pack("I", ltype) + self.kv_data += self._pack("Q", len(val)) + for item in val: + self.add_val(item, add_vtype=False) + else: + raise ValueError("Invalid GGUF metadata value type or value") + + @staticmethod + def ggml_pad(x: int, n: int) -> int: + return ((x + n - 1) // n) * n + + def add_tensor_info( + self, name: str, tensor_shape: Sequence[int], tensor_dtype: np.dtype[np.float16] | np.dtype[np.float32], + tensor_nbytes: int, raw_dtype: GGMLQuantizationType | None = None, + ) -> None: + if self.state is not WriterState.EMPTY: + raise ValueError(f'Expected output file to be empty, got {self.state}') + + if raw_dtype is None and tensor_dtype not in (np.float32, np.float16): + raise ValueError("Only F32 and F16 tensors are supported for now") + + encoded_name = name.encode("utf8") + self.ti_data += self._pack("Q", len(encoded_name)) + self.ti_data += encoded_name + n_dims = len(tensor_shape) + self.ti_data += self._pack("I", n_dims) + for i in range(n_dims): + self.ti_data += self._pack("Q", tensor_shape[n_dims - 1 - i]) + if raw_dtype is None: + dtype = GGMLQuantizationType.F32 if tensor_dtype == np.float32 else GGMLQuantizationType.F16 + else: + dtype = raw_dtype + self.ti_data += self._pack("I", dtype) + self.ti_data += self._pack("Q", self.offset_tensor) + self.offset_tensor += GGUFWriter.ggml_pad(tensor_nbytes, self.data_alignment) + self.ti_data_count += 1 + + def add_tensor( + self, name: str, tensor: np.ndarray[Any, Any], raw_shape: Sequence[int] | None = None, + raw_dtype: GGMLQuantizationType | None = None, + ) -> None: + if self.endianess == GGUFEndian.BIG: + tensor.byteswap(inplace=True) + if self.use_temp_file and self.temp_file is None: + fp = tempfile.SpooledTemporaryFile(mode="w+b", max_size=256 * 1024 * 1024) + fp.seek(0) + self.temp_file = fp + + shape: Sequence[int] = raw_shape if raw_shape is not None else tensor.shape + self.add_tensor_info(name, shape, tensor.dtype, tensor.nbytes, raw_dtype = raw_dtype) + + if self.temp_file is None: + self.tensors.append(tensor) + return + + tensor.tofile(self.temp_file) + self.write_padding(self.temp_file, tensor.nbytes) + + def write_padding(self, fp: IO[bytes], n: int, align: int | None = None) -> None: + pad = GGUFWriter.ggml_pad(n, align if align is not None else self.data_alignment) - n + if pad != 0: + fp.write(bytes([0] * pad)) + + def write_tensor_data(self, tensor: np.ndarray[Any, Any]) -> None: + if self.state is not WriterState.TI_DATA: + raise ValueError(f'Expected output file to contain tensor info, got {self.state}') + + if self.endianess == GGUFEndian.BIG: + tensor.byteswap(inplace=True) + self.write_padding(self.fout, self.fout.tell()) + tensor.tofile(self.fout) + self.write_padding(self.fout, tensor.nbytes) + + def write_tensors_to_file(self) -> None: + self.write_ti_data_to_file() + + self.write_padding(self.fout, self.fout.tell()) + + if self.temp_file is None: + while True: + try: + tensor = self.tensors.pop(0) + except IndexError: + break + tensor.tofile(self.fout) + self.write_padding(self.fout, tensor.nbytes) + return + + self.temp_file.seek(0) + + shutil.copyfileobj(self.temp_file, self.fout) + self.flush() + self.temp_file.close() + + def flush(self) -> None: + self.fout.flush() + + def close(self) -> None: + self.fout.close() + + def add_architecture(self) -> None: + self.add_string(Keys.General.ARCHITECTURE, self.arch) + + def add_author(self, author: str) -> None: + self.add_string(Keys.General.AUTHOR, author) + + def add_tensor_data_layout(self, layout: str) -> None: + self.add_string(Keys.LLM.TENSOR_DATA_LAYOUT.format(arch=self.arch), layout) + + def add_url(self, url: str) -> None: + self.add_string(Keys.General.URL, url) + + def add_description(self, description: str) -> None: + self.add_string(Keys.General.DESCRIPTION, description) + + def add_source_url(self, url: str) -> None: + self.add_string(Keys.General.SOURCE_URL, url) + + def add_source_hf_repo(self, repo: str) -> None: + self.add_string(Keys.General.SOURCE_HF_REPO, repo) + + def add_file_type(self, ftype: int) -> None: + self.add_uint32(Keys.General.FILE_TYPE, ftype) + + def add_name(self, name: str) -> None: + self.add_string(Keys.General.NAME, name) + + def add_quantization_version(self, quantization_version: GGMLQuantizationType) -> None: + self.add_uint32( + Keys.General.QUANTIZATION_VERSION, quantization_version) + + def add_custom_alignment(self, alignment: int) -> None: + self.data_alignment = alignment + self.add_uint32(Keys.General.ALIGNMENT, alignment) + + def add_context_length(self, length: int) -> None: + self.add_uint32(Keys.LLM.CONTEXT_LENGTH.format(arch=self.arch), length) + + def add_embedding_length(self, length: int) -> None: + self.add_uint32(Keys.LLM.EMBEDDING_LENGTH.format(arch=self.arch), length) + + def add_block_count(self, length: int) -> None: + self.add_uint32(Keys.LLM.BLOCK_COUNT.format(arch=self.arch), length) + + def add_feed_forward_length(self, length: int) -> None: + self.add_uint32(Keys.LLM.FEED_FORWARD_LENGTH.format(arch=self.arch), length) + + def add_parallel_residual(self, use: bool) -> None: + self.add_bool(Keys.LLM.USE_PARALLEL_RESIDUAL.format(arch=self.arch), use) + + def add_head_count(self, count: int) -> None: + self.add_uint32(Keys.Attention.HEAD_COUNT.format(arch=self.arch), count) + + def add_head_count_kv(self, count: int) -> None: + self.add_uint32(Keys.Attention.HEAD_COUNT_KV.format(arch=self.arch), count) + + def add_key_length(self, length: int) -> None: + self.add_uint32(Keys.Attention.KEY_LENGTH.format(arch=self.arch), length) + + def add_value_length(self, length: int) -> None: + self.add_uint32(Keys.Attention.VALUE_LENGTH.format(arch=self.arch), length) + + def add_max_alibi_bias(self, bias: float) -> None: + self.add_float32(Keys.Attention.MAX_ALIBI_BIAS.format(arch=self.arch), bias) + + def add_clamp_kqv(self, value: float) -> None: + self.add_float32(Keys.Attention.CLAMP_KQV.format(arch=self.arch), value) + + def add_expert_count(self, count: int) -> None: + self.add_uint32(Keys.LLM.EXPERT_COUNT.format(arch=self.arch), count) + + def add_expert_used_count(self, count: int) -> None: + self.add_uint32(Keys.LLM.EXPERT_USED_COUNT.format(arch=self.arch), count) + + def add_layer_norm_eps(self, value: float) -> None: + self.add_float32(Keys.Attention.LAYERNORM_EPS.format(arch=self.arch), value) + + def add_layer_norm_rms_eps(self, value: float) -> None: + self.add_float32(Keys.Attention.LAYERNORM_RMS_EPS.format(arch=self.arch), value) + + def add_rope_dimension_count(self, count: int) -> None: + self.add_uint32(Keys.Rope.DIMENSION_COUNT.format(arch=self.arch), count) + + def add_rope_freq_base(self, value: float) -> None: + self.add_float32(Keys.Rope.FREQ_BASE.format(arch=self.arch), value) + + def add_rope_scaling_type(self, value: RopeScalingType) -> None: + self.add_string(Keys.Rope.SCALING_TYPE.format(arch=self.arch), value.value) + + def add_rope_scaling_factor(self, value: float) -> None: + self.add_float32(Keys.Rope.SCALING_FACTOR.format(arch=self.arch), value) + + def add_rope_scaling_orig_ctx_len(self, value: int) -> None: + self.add_uint32(Keys.Rope.SCALING_ORIG_CTX_LEN.format(arch=self.arch), value) + + def add_rope_scaling_finetuned(self, value: bool) -> None: + self.add_bool(Keys.Rope.SCALING_FINETUNED.format(arch=self.arch), value) + + def add_tokenizer_model(self, model: str) -> None: + self.add_string(Keys.Tokenizer.MODEL, model) + + def add_token_list(self, tokens: Sequence[str] | Sequence[bytes] | Sequence[bytearray]) -> None: + self.add_array(Keys.Tokenizer.LIST, tokens) + + def add_token_merges(self, merges: Sequence[str] | Sequence[bytes] | Sequence[bytearray]) -> None: + self.add_array(Keys.Tokenizer.MERGES, merges) + + def add_token_types(self, types: Sequence[TokenType] | Sequence[int]) -> None: + self.add_array(Keys.Tokenizer.TOKEN_TYPE, types) + + def add_token_scores(self, scores: Sequence[float]) -> None: + self.add_array(Keys.Tokenizer.SCORES, scores) + + def add_bos_token_id(self, id: int) -> None: + self.add_uint32(Keys.Tokenizer.BOS_ID, id) + + def add_eos_token_id(self, id: int) -> None: + self.add_uint32(Keys.Tokenizer.EOS_ID, id) + + def add_unk_token_id(self, id: int) -> None: + self.add_uint32(Keys.Tokenizer.UNK_ID, id) + + def add_sep_token_id(self, id: int) -> None: + self.add_uint32(Keys.Tokenizer.SEP_ID, id) + + def add_pad_token_id(self, id: int) -> None: + self.add_uint32(Keys.Tokenizer.PAD_ID, id) + + def add_add_bos_token(self, value: bool) -> None: + self.add_bool(Keys.Tokenizer.ADD_BOS, value) + + def add_add_eos_token(self, value: bool) -> None: + self.add_bool(Keys.Tokenizer.ADD_EOS, value) + + def add_add_space_prefix(self, value: bool) -> None: + self.add_bool(Keys.Tokenizer.ADD_PREFIX, value) + + def add_chat_template(self, value: str) -> None: + self.add_string(Keys.Tokenizer.CHAT_TEMPLATE, value) + + def _pack(self, fmt: str, value: Any, skip_pack_prefix: bool = False) -> bytes: + pack_prefix = '' + if not skip_pack_prefix: + pack_prefix = '<' if self.endianess == GGUFEndian.LITTLE else '>' + return struct.pack(f'{pack_prefix}{fmt}', value) + + def _write_packed(self, fmt: str, value: Any, skip_pack_prefix: bool = False) -> None: + self.fout.write(self._pack(fmt, value, skip_pack_prefix)) diff --git a/extensions/model-extension/scripts/gguf-py/gguf/py.typed b/extensions/model-extension/scripts/gguf-py/gguf/py.typed new file mode 100644 index 000000000..e69de29bb diff --git a/extensions/model-extension/scripts/gguf-py/gguf/tensor_mapping.py b/extensions/model-extension/scripts/gguf-py/gguf/tensor_mapping.py new file mode 100644 index 000000000..4f16d8504 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/tensor_mapping.py @@ -0,0 +1,332 @@ +from __future__ import annotations + +from typing import Sequence + +from .constants import MODEL_ARCH, MODEL_TENSOR, MODEL_TENSORS, TENSOR_NAMES + + +class TensorNameMap: + mappings_cfg: dict[MODEL_TENSOR, tuple[str, ...]] = { + # Token embeddings + MODEL_TENSOR.TOKEN_EMBD: ( + "gpt_neox.embed_in", # gptneox + "transformer.wte", # gpt2 gpt-j mpt refact qwen + "transformer.word_embeddings", # falcon + "word_embeddings", # bloom + "model.embed_tokens", # llama-hf + "tok_embeddings", # llama-pth + "embeddings.word_embeddings", # bert + "language_model.embedding.word_embeddings", # persimmon + "wte", # gpt2 + "transformer.embd.wte", # phi2 + "model.tok_embeddings", # internlm2 + ), + + # Token type embeddings + MODEL_TENSOR.TOKEN_TYPES: ( + "embeddings.token_type_embeddings", # bert + ), + + # Normalization of token embeddings + MODEL_TENSOR.TOKEN_EMBD_NORM: ( + "word_embeddings_layernorm", # bloom + ), + + # Position embeddings + MODEL_TENSOR.POS_EMBD: ( + "transformer.wpe", # gpt2 + "embeddings.position_embeddings", # bert + "wpe", # gpt2 + ), + + # Output + MODEL_TENSOR.OUTPUT: ( + "embed_out", # gptneox + "lm_head", # gpt2 mpt falcon llama-hf baichuan qwen + "output", # llama-pth bloom internlm2 + "word_embeddings_for_head", # persimmon + "lm_head.linear", # phi2 + ), + + # Output norm + MODEL_TENSOR.OUTPUT_NORM: ( + "gpt_neox.final_layer_norm", # gptneox + "transformer.ln_f", # gpt2 gpt-j falcon + "model.norm", # llama-hf baichuan internlm2 + "norm", # llama-pth + "embeddings.LayerNorm", # bert + "transformer.norm_f", # mpt + "ln_f", # refact bloom qwen gpt2 + "language_model.encoder.final_layernorm", # persimmon + "model.final_layernorm", # persimmon + "lm_head.ln", # phi2 + ), + + # Rope frequencies + MODEL_TENSOR.ROPE_FREQS: ( + "rope.freqs", # llama-pth + ), + } + + block_mappings_cfg: dict[MODEL_TENSOR, tuple[str, ...]] = { + # Attention norm + MODEL_TENSOR.ATTN_NORM: ( + "gpt_neox.layers.{bid}.input_layernorm", # gptneox + "transformer.h.{bid}.ln_1", # gpt2 gpt-j refact qwen + "transformer.blocks.{bid}.norm_1", # mpt + "transformer.h.{bid}.input_layernorm", # falcon7b + "h.{bid}.input_layernorm", # bloom + "transformer.h.{bid}.ln_mlp", # falcon40b + "model.layers.{bid}.input_layernorm", # llama-hf + "layers.{bid}.attention_norm", # llama-pth + "encoder.layer.{bid}.attention.output.LayerNorm", # bert + "language_model.encoder.layers.{bid}.input_layernorm", # persimmon + "model.layers.{bid}.ln1", # yi + "h.{bid}.ln_1", # gpt2 + "transformer.h.{bid}.ln", # phi2 + "model.layers.layers.{bid}.norm", # plamo + "model.layers.{bid}.attention_norm", # internlm2 + ), + + # Attention norm 2 + MODEL_TENSOR.ATTN_NORM_2: ( + "transformer.h.{bid}.ln_attn", # falcon40b + ), + + # Attention query-key-value + MODEL_TENSOR.ATTN_QKV: ( + "gpt_neox.layers.{bid}.attention.query_key_value", # gptneox + "transformer.h.{bid}.attn.c_attn", # gpt2 qwen + "transformer.blocks.{bid}.attn.Wqkv", # mpt + "transformer.h.{bid}.self_attention.query_key_value", # falcon + "h.{bid}.self_attention.query_key_value", # bloom + "language_model.encoder.layers.{bid}.self_attention.query_key_value", # persimmon + "model.layers.{bid}.self_attn.query_key_value", # persimmon + "h.{bid}.attn.c_attn", # gpt2 + "transformer.h.{bid}.mixer.Wqkv", # phi2 + ), + + # Attention query + MODEL_TENSOR.ATTN_Q: ( + "model.layers.{bid}.self_attn.q_proj", # llama-hf + "layers.{bid}.attention.wq", # llama-pth + "encoder.layer.{bid}.attention.self.query", # bert + "transformer.h.{bid}.attn.q_proj", # gpt-j + "model.layers.layers.{bid}.self_attn.q_proj", # plamo + "model.layers.{bid}.attention.wq" # internlm2 + ), + + # Attention key + MODEL_TENSOR.ATTN_K: ( + "model.layers.{bid}.self_attn.k_proj", # llama-hf + "layers.{bid}.attention.wk", # llama-pth + "encoder.layer.{bid}.attention.self.key", # bert + "transformer.h.{bid}.attn.k_proj", # gpt-j + "model.layers.layers.{bid}.self_attn.k_proj", # plamo + "model.layers.{bid}.attention.wk" # internlm2 + ), + + # Attention value + MODEL_TENSOR.ATTN_V: ( + "model.layers.{bid}.self_attn.v_proj", # llama-hf + "layers.{bid}.attention.wv", # llama-pth + "encoder.layer.{bid}.attention.self.value", # bert + "transformer.h.{bid}.attn.v_proj", # gpt-j + "model.layers.layers.{bid}.self_attn.v_proj", # plamo + "model.layers.{bid}.attention.wv" # internlm2 + ), + + # Attention output + MODEL_TENSOR.ATTN_OUT: ( + "gpt_neox.layers.{bid}.attention.dense", # gptneox + "transformer.h.{bid}.attn.c_proj", # gpt2 refact qwen + "transformer.blocks.{bid}.attn.out_proj", # mpt + "transformer.h.{bid}.self_attention.dense", # falcon + "h.{bid}.self_attention.dense", # bloom + "model.layers.{bid}.self_attn.o_proj", # llama-hf + "layers.{bid}.attention.wo", # llama-pth + "encoder.layer.{bid}.attention.output.dense", # bert + "transformer.h.{bid}.attn.out_proj", # gpt-j + "language_model.encoder.layers.{bid}.self_attention.dense", # persimmon + "model.layers.{bid}.self_attn.dense", # persimmon + "h.{bid}.attn.c_proj", # gpt2 + "transformer.h.{bid}.mixer.out_proj", # phi2 + "model.layers.layers.{bid}.self_attn.o_proj", # plamo + "model.layers.{bid}.attention.wo", # internlm2 + ), + + # Rotary embeddings + MODEL_TENSOR.ATTN_ROT_EMBD: ( + "model.layers.{bid}.self_attn.rotary_emb.inv_freq", # llama-hf + "layers.{bid}.attention.inner_attention.rope.freqs", # llama-pth + "model.layers.layers.{bid}.self_attn.rotary_emb.inv_freq", # plamo + "transformer.h.{bid}.attn.rotary_emb.inv_freq", # codeshell + ), + + # Feed-forward norm + MODEL_TENSOR.FFN_NORM: ( + "gpt_neox.layers.{bid}.post_attention_layernorm", # gptneox + "transformer.h.{bid}.ln_2", # gpt2 refact qwen + "h.{bid}.post_attention_layernorm", # bloom + "transformer.blocks.{bid}.norm_2", # mpt + "model.layers.{bid}.post_attention_layernorm", # llama-hf + "layers.{bid}.ffn_norm", # llama-pth + "encoder.layer.{bid}.output.LayerNorm", # bert + "language_model.encoder.layers.{bid}.post_attention_layernorm", # persimmon + "model.layers.{bid}.ln2", # yi + "h.{bid}.ln_2", # gpt2 + "model.layers.{bid}.ffn_norm", # internlm2 + ), + + MODEL_TENSOR.FFN_GATE_INP: ( + "layers.{bid}.feed_forward.gate", # mixtral + "model.layers.{bid}.block_sparse_moe.gate", # mixtral + ), + + # Feed-forward up + MODEL_TENSOR.FFN_UP: ( + "gpt_neox.layers.{bid}.mlp.dense_h_to_4h", # gptneox + "transformer.h.{bid}.mlp.c_fc", # gpt2 + "transformer.blocks.{bid}.ffn.up_proj", # mpt + "transformer.h.{bid}.mlp.dense_h_to_4h", # falcon + "h.{bid}.mlp.dense_h_to_4h", # bloom + "model.layers.{bid}.mlp.up_proj", # llama-hf refact + "layers.{bid}.feed_forward.w3", # llama-pth + "encoder.layer.{bid}.intermediate.dense", # bert + "transformer.h.{bid}.mlp.fc_in", # gpt-j + "language_model.encoder.layers.{bid}.mlp.dense_h_to_4h", # persimmon + "model.layers.{bid}.mlp.dense_h_to_4h", # persimmon + "transformer.h.{bid}.mlp.w1", # qwen + "h.{bid}.mlp.c_fc", # gpt2 + "transformer.h.{bid}.mlp.fc1", # phi2 + "model.layers.{bid}.mlp.fc1", # phi2 + "model.layers.layers.{bid}.mlp.up_proj", # plamo + "model.layers.{bid}.feed_forward.w3", # internlm2 + ), + + MODEL_TENSOR.FFN_UP_EXP: ( + "layers.{bid}.feed_forward.experts.{xid}.w3", # mixtral + "model.layers.{bid}.block_sparse_moe.experts.{xid}.w3", # mixtral + ), + + # AWQ-activation gate + MODEL_TENSOR.FFN_ACT: ( + "transformer.blocks.{bid}.ffn.act", # mpt + ), + + # Feed-forward gate + MODEL_TENSOR.FFN_GATE: ( + "model.layers.{bid}.mlp.gate_proj", # llama-hf refact + "layers.{bid}.feed_forward.w1", # llama-pth + "transformer.h.{bid}.mlp.w2", # qwen + "model.layers.layers.{bid}.mlp.gate_proj", # plamo + "model.layers.{bid}.feed_forward.w1", # internlm2 + ), + + MODEL_TENSOR.FFN_GATE_EXP: ( + "layers.{bid}.feed_forward.experts.{xid}.w1", # mixtral + "model.layers.{bid}.block_sparse_moe.experts.{xid}.w1", # mixtral + ), + + # Feed-forward down + MODEL_TENSOR.FFN_DOWN: ( + "gpt_neox.layers.{bid}.mlp.dense_4h_to_h", # gptneox + "transformer.h.{bid}.mlp.c_proj", # gpt2 refact qwen + "transformer.blocks.{bid}.ffn.down_proj", # mpt + "transformer.h.{bid}.mlp.dense_4h_to_h", # falcon + "h.{bid}.mlp.dense_4h_to_h", # bloom + "model.layers.{bid}.mlp.down_proj", # llama-hf + "layers.{bid}.feed_forward.w2", # llama-pth + "encoder.layer.{bid}.output.dense", # bert + "transformer.h.{bid}.mlp.fc_out", # gpt-j + "language_model.encoder.layers.{bid}.mlp.dense_4h_to_h", # persimmon + "model.layers.{bid}.mlp.dense_4h_to_h", # persimmon + "h.{bid}.mlp.c_proj", # gpt2 + "transformer.h.{bid}.mlp.fc2", # phi2 + "model.layers.{bid}.mlp.fc2", # phi2 + "model.layers.layers.{bid}.mlp.down_proj", # plamo + "model.layers.{bid}.feed_forward.w2", # internlm2 + ), + + MODEL_TENSOR.FFN_DOWN_EXP: ( + "layers.{bid}.feed_forward.experts.{xid}.w2", # mixtral + "model.layers.{bid}.block_sparse_moe.experts.{xid}.w2", # mixtral + ), + + MODEL_TENSOR.ATTN_Q_NORM: ( + "language_model.encoder.layers.{bid}.self_attention.q_layernorm", + "model.layers.{bid}.self_attn.q_layernorm", # persimmon + ), + + MODEL_TENSOR.ATTN_K_NORM: ( + "language_model.encoder.layers.{bid}.self_attention.k_layernorm", + "model.layers.{bid}.self_attn.k_layernorm", # persimmon + ), + + MODEL_TENSOR.ROPE_FREQS: ( + "language_model.encoder.layers.{bid}.self_attention.rotary_emb.inv_freq", # persimmon + ), + } + + mapping: dict[str, tuple[MODEL_TENSOR, str]] + + def __init__(self, arch: MODEL_ARCH, n_blocks: int): + self.mapping = {} + for tensor, keys in self.mappings_cfg.items(): + if tensor not in MODEL_TENSORS[arch]: + continue + tensor_name = TENSOR_NAMES[tensor] + self.mapping[tensor_name] = (tensor, tensor_name) + for key in keys: + self.mapping[key] = (tensor, tensor_name) + for bid in range(n_blocks): + for tensor, keys in self.block_mappings_cfg.items(): + if tensor not in MODEL_TENSORS[arch]: + continue + # TODO: make this configurable + n_experts = 8 + for xid in range(n_experts): + tensor_name = TENSOR_NAMES[tensor].format(bid = bid, xid = xid) + self.mapping[tensor_name] = (tensor, tensor_name) + for key in keys: + key = key.format(bid = bid, xid = xid) + self.mapping[key] = (tensor, tensor_name) + + def get_type_and_name(self, key: str, try_suffixes: Sequence[str] = ()) -> tuple[MODEL_TENSOR, str] | None: + result = self.mapping.get(key) + if result is not None: + return result + for suffix in try_suffixes: + if key.endswith(suffix): + result = self.mapping.get(key[:-len(suffix)]) + if result is not None: + return result[0], result[1] + suffix + return None + + def get_name(self, key: str, try_suffixes: Sequence[str] = ()) -> str | None: + result = self.get_type_and_name(key, try_suffixes = try_suffixes) + if result is None: + return None + return result[1] + + def get_type(self, key: str, try_suffixes: Sequence[str] = ()) -> MODEL_TENSOR | None: + result = self.get_type_and_name(key, try_suffixes = try_suffixes) + if result is None: + return None + return result[0] + + def __getitem__(self, key: str) -> str: + try: + return self.mapping[key][1] + except KeyError: + raise KeyError(key) + + def __contains__(self, key: str) -> bool: + return key in self.mapping + + def __repr__(self) -> str: + return repr(self.mapping) + + +def get_tensor_name_map(arch: MODEL_ARCH, n_blocks: int) -> TensorNameMap: + return TensorNameMap(arch, n_blocks) diff --git a/extensions/model-extension/scripts/gguf-py/gguf/vocab.py b/extensions/model-extension/scripts/gguf-py/gguf/vocab.py new file mode 100644 index 000000000..cd1942975 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/gguf/vocab.py @@ -0,0 +1,185 @@ +from __future__ import annotations + +import json +import os +import sys +from pathlib import Path +from typing import Any, Callable + +from .gguf_writer import GGUFWriter + + +class SpecialVocab: + merges: list[str] + add_special_token: dict[str, bool] + special_token_ids: dict[str, int] + chat_template: str | None + + def __init__( + self, path: str | os.PathLike[str], load_merges: bool = False, + special_token_types: tuple[str, ...] | None = None, + n_vocab: int | None = None, + ): + self.special_token_ids = {} + self.add_special_token = {} + self.n_vocab = n_vocab + self.load_merges = load_merges + self.merges = [] + self.chat_template = None + if special_token_types is not None: + self.special_token_types = special_token_types + else: + self.special_token_types = ('bos', 'eos', 'unk', 'sep', 'pad') + self._load(Path(path)) + + def __repr__(self) -> str: + return ''.format( + len(self.merges), self.special_token_ids or "unset", self.add_special_token or "unset", + ) + + def add_to_gguf(self, gw: GGUFWriter, quiet: bool = False) -> None: + if self.merges: + if not quiet: + print(f'gguf: Adding {len(self.merges)} merge(s).') + gw.add_token_merges(self.merges) + elif self.load_merges: + print( + 'gguf: WARNING: Adding merges requested but no merges found, output may be non-functional.', + file = sys.stderr, + ) + for typ, tokid in self.special_token_ids.items(): + id_handler: Callable[[int], None] | None = getattr(gw, f'add_{typ}_token_id', None) + if id_handler is None: + print( + f'gguf: WARNING: No handler for special token type {typ} with id {tokid} - skipping', + file = sys.stderr, + ) + continue + if not quiet: + print(f'gguf: Setting special token type {typ} to {tokid}') + id_handler(tokid) + for typ, value in self.add_special_token.items(): + add_handler: Callable[[bool], None] | None = getattr(gw, f'add_add_{typ}_token', None) + if add_handler is None: + print( + f'gguf: WARNING: No handler for add_{typ}_token with value {value} - skipping', + file = sys.stderr, + ) + continue + if not quiet: + print(f'gguf: Setting add_{typ}_token to {value}') + add_handler(value) + if self.chat_template is not None: + if not quiet: + print(f'gguf: Setting chat_template to {self.chat_template}') + gw.add_chat_template(self.chat_template) + + def _load(self, path: Path) -> None: + self._try_load_from_tokenizer_json(path) + self._try_load_from_config_json(path) + if self.load_merges and not self.merges: + self._try_load_merges_txt(path) + + def _try_load_merges_txt(self, path: Path) -> bool: + merges_file = path / 'merges.txt' + if not merges_file.is_file(): + return False + with open(merges_file, 'r', encoding = 'utf-8') as fp: + first_line = next(fp, '').strip() + if not first_line.startswith('#'): + fp.seek(0) + line_num = 0 + else: + line_num = 1 + merges = [] + for line in fp: + line_num += 1 + line = line.strip() + if not line: + continue + parts = line.split(None, 3) + if len(parts) != 2: + print( + f'gguf: WARNING: {merges_file.name}: Line {line_num}: Entry malformed, ignoring', + file = sys.stderr, + ) + continue + merges.append(f'{parts[0]} {parts[1]}') + self.merges = merges + return True + + def _set_special_token(self, typ: str, tid: Any) -> None: + if not isinstance(tid, int): + return + if tid < 0: + raise ValueError(f'invalid value for special token type {typ}: {tid}') + if self.n_vocab is None or tid < self.n_vocab: + if typ in self.special_token_ids: + return + self.special_token_ids[typ] = tid + return + print( + f'gguf: WARNING: Special token type {typ}, id {tid} out of range, must be under {self.n_vocab} - skipping', + file = sys.stderr, + ) + + def _try_load_from_tokenizer_json(self, path: Path) -> bool: + tokenizer_file = path / 'tokenizer.json' + if tokenizer_file.is_file(): + with open(tokenizer_file, encoding = 'utf-8') as f: + tokenizer = json.load(f) + if self.load_merges: + merges = tokenizer.get('model', {}).get('merges') + if isinstance(merges, list) and merges and isinstance(merges[0], str): + self.merges = merges + added_tokens = tokenizer.get('added_tokens', {}) + else: + added_tokens = {} + tokenizer_config_file = path / 'tokenizer_config.json' + if not tokenizer_config_file.is_file(): + return True + with open(tokenizer_config_file, encoding = 'utf-8') as f: + tokenizer_config = json.load(f) + chat_template = tokenizer_config.get('chat_template') + if chat_template is None or isinstance(chat_template, str): + self.chat_template = chat_template + else: + print( + f'gguf: WARNING: Bad type for chat_template field in {tokenizer_config_file!r} - ignoring', + file = sys.stderr + ) + for typ in self.special_token_types: + add_entry = tokenizer_config.get(f'add_{typ}_token') + if isinstance(add_entry, bool): + self.add_special_token[typ] = add_entry + if not added_tokens: + # We will need this to get the content for the token, so if it's empty + # may as well just give up. + continue + entry = tokenizer_config.get(f'{typ}_token') + if isinstance(entry, str): + tc_content = entry + elif isinstance(entry, dict): + entry_content = entry.get('content') + if not isinstance(entry_content, str): + continue + tc_content = entry_content + else: + continue + # We only need the first match here. + maybe_token_id = next( + (atok.get('id') for atok in added_tokens if atok.get('content') == tc_content), + None, + ) + self._set_special_token(typ, maybe_token_id) + return True + + def _try_load_from_config_json(self, path: Path) -> bool: + config_file = path / 'config.json' + if not config_file.is_file(): + return False + with open(config_file, encoding = 'utf-8') as f: + config = json.load(f) + for typ in self.special_token_types: + self._set_special_token(typ, config.get(f'{typ}_token_id')) + return True diff --git a/extensions/model-extension/scripts/gguf-py/pyproject.toml b/extensions/model-extension/scripts/gguf-py/pyproject.toml new file mode 100644 index 000000000..9789c2c87 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/pyproject.toml @@ -0,0 +1,35 @@ +[tool.poetry] +name = "gguf" +version = "0.7.0" +description = "Read and write ML models in GGUF for GGML" +authors = ["GGML "] +packages = [ + {include = "gguf"}, + {include = "gguf/py.typed"}, + {include = "scripts"}, +] +readme = "README.md" +homepage = "https://ggml.ai" +repository = "https://github.com/ggerganov/llama.cpp" +keywords = ["ggml", "gguf", "llama.cpp"] +classifiers = [ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", +] + +[tool.poetry.dependencies] +python = ">=3.8" +numpy = ">=1.17" + +[tool.poetry.dev-dependencies] +pytest = "^5.2" + +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" + +[tool.poetry.scripts] +gguf-convert-endian = "scripts:gguf_convert_endian_entrypoint" +gguf-dump = "scripts:gguf_dump_entrypoint" +gguf-set-metadata = "scripts:gguf_set_metadata_entrypoint" diff --git a/extensions/model-extension/scripts/gguf-py/scripts/__init__.py b/extensions/model-extension/scripts/gguf-py/scripts/__init__.py new file mode 100644 index 000000000..77132db7a --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/scripts/__init__.py @@ -0,0 +1,12 @@ +import os + +from importlib import import_module + + +os.environ["NO_LOCAL_GGUF"] = "TRUE" + +gguf_convert_endian_entrypoint = import_module("scripts.gguf-convert-endian").main +gguf_dump_entrypoint = import_module("scripts.gguf-dump").main +gguf_set_metadata_entrypoint = import_module("scripts.gguf-set-metadata").main + +del import_module, os diff --git a/extensions/model-extension/scripts/gguf-py/scripts/gguf-convert-endian.py b/extensions/model-extension/scripts/gguf-py/scripts/gguf-convert-endian.py new file mode 100755 index 000000000..10a16ad06 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/scripts/gguf-convert-endian.py @@ -0,0 +1,112 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import argparse +import os +import sys +from pathlib import Path + +import numpy as np + +# Necessary to load the local gguf package +if "NO_LOCAL_GGUF" not in os.environ and (Path(__file__).parent.parent.parent / 'gguf-py').exists(): + sys.path.insert(0, str(Path(__file__).parent.parent)) + +import gguf + + +def convert_byteorder(reader: gguf.GGUFReader, args: argparse.Namespace) -> None: + if np.uint32(1) == np.uint32(1).newbyteorder("<"): + # Host is little endian + host_endian = "little" + swapped_endian = "big" + else: + # Sorry PDP or other weird systems that don't use BE or LE. + host_endian = "big" + swapped_endian = "little" + if reader.byte_order == "S": + file_endian = swapped_endian + else: + file_endian = host_endian + order = host_endian if args.order == "native" else args.order + print(f"* Host is {host_endian.upper()} endian, GGUF file seems to be {file_endian.upper()} endian") + if file_endian == order: + print(f"* File is already {order.upper()} endian. Nothing to do.") + sys.exit(0) + print("* Checking tensors for conversion compatibility") + for tensor in reader.tensors: + if tensor.tensor_type not in ( + gguf.GGMLQuantizationType.F32, + gguf.GGMLQuantizationType.F16, + gguf.GGMLQuantizationType.Q8_0, + ): + raise ValueError(f"Cannot handle type {tensor.tensor_type.name} for tensor {repr(tensor.name)}") + print(f"* Preparing to convert from {file_endian.upper()} to {order.upper()}") + if args.dry_run: + return + print("\n*** Warning *** Warning *** Warning **") + print("* This conversion process may damage the file. Ensure you have a backup.") + if order != host_endian: + print("* Requested endian differs from host, you will not be able to load the model on this machine.") + print("* The file will be modified immediately, so if conversion fails or is interrupted") + print("* the file will be corrupted. Enter exactly YES if you are positive you want to proceed:") + response = input("YES, I am sure> ") + if response != "YES": + print("You didn't enter YES. Okay then, see ya!") + sys.exit(0) + print(f"\n* Converting fields ({len(reader.fields)})") + for idx, field in enumerate(reader.fields.values()): + print(f"- {idx:4}: Converting field {repr(field.name)}, part count: {len(field.parts)}") + for part in field.parts: + part.byteswap(inplace=True) + print(f"\n* Converting tensors ({len(reader.tensors)})") + for idx, tensor in enumerate(reader.tensors): + print( + f" - {idx:4}: Converting tensor {repr(tensor.name)}, type={tensor.tensor_type.name}, " + f"elements={tensor.n_elements}... ", + end="", + ) + tensor_type = tensor.tensor_type + for part in tensor.field.parts: + part.byteswap(inplace=True) + if tensor_type != gguf.GGMLQuantizationType.Q8_0: + tensor.data.byteswap(inplace=True) + print() + continue + # A Q8_0 block consists of a f16 delta followed by 32 int8 quants, so 34 bytes + block_size = 34 + n_blocks = len(tensor.data) // block_size + for block_num in range(n_blocks): + block_offs = block_num * block_size + # I know I said f16, but it doesn't matter here - any simple 16 bit type works. + delta = tensor.data[block_offs:block_offs + 2].view(dtype=np.uint16) + delta.byteswap(inplace=True) + if block_num % 100000 == 0: + print(f"[{(n_blocks - block_num) // 1000}K]", end="") + sys.stdout.flush() + print() + print("* Completion") + + +def main() -> None: + parser = argparse.ArgumentParser(description="Convert GGUF file byte order") + parser.add_argument( + "model", type=str, + help="GGUF format model filename", + ) + parser.add_argument( + "order", type=str, choices=['big', 'little', 'native'], + help="Requested byte order", + ) + parser.add_argument( + "--dry-run", action="store_true", + help="Don't actually change anything", + ) + args = parser.parse_args(None if len(sys.argv) > 1 else ["--help"]) + print(f'* Loading: {args.model}') + reader = gguf.GGUFReader(args.model, 'r' if args.dry_run else 'r+') + convert_byteorder(reader, args) + + +if __name__ == "__main__": + main() diff --git a/extensions/model-extension/scripts/gguf-py/scripts/gguf-dump.py b/extensions/model-extension/scripts/gguf-py/scripts/gguf-dump.py new file mode 100755 index 000000000..dbf891508 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/scripts/gguf-dump.py @@ -0,0 +1,117 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import argparse +import os +import sys +from pathlib import Path +from typing import Any + +import numpy as np + +# Necessary to load the local gguf package +if "NO_LOCAL_GGUF" not in os.environ and (Path(__file__).parent.parent.parent / 'gguf-py').exists(): + sys.path.insert(0, str(Path(__file__).parent.parent)) + +from gguf import GGUFReader, GGUFValueType # noqa: E402 + + +def get_file_host_endian(reader: GGUFReader) -> tuple[str, str]: + host_endian = 'LITTLE' if np.uint32(1) == np.uint32(1).newbyteorder("<") else 'BIG' + if reader.byte_order == 'S': + file_endian = 'BIG' if host_endian == 'LITTLE' else 'LITTLE' + else: + file_endian = host_endian + return (host_endian, file_endian) + + +# For more information about what field.parts and field.data represent, +# please see the comments in the modify_gguf.py example. +def dump_metadata(reader: GGUFReader, args: argparse.Namespace) -> None: + host_endian, file_endian = get_file_host_endian(reader) + print(f'* File is {file_endian} endian, script is running on a {host_endian} endian host.') + print(f'\n* Dumping {len(reader.fields)} key/value pair(s)') + for n, field in enumerate(reader.fields.values(), 1): + if not field.types: + pretty_type = 'N/A' + elif field.types[0] == GGUFValueType.ARRAY: + nest_count = len(field.types) - 1 + pretty_type = '[' * nest_count + str(field.types[-1].name) + ']' * nest_count + else: + pretty_type = str(field.types[-1].name) + print(f' {n:5}: {pretty_type:10} | {len(field.data):8} | {field.name}', end = '') + if len(field.types) == 1: + curr_type = field.types[0] + if curr_type == GGUFValueType.STRING: + print(' = {0}'.format(repr(str(bytes(field.parts[-1]), encoding='utf8')[:60])), end = '') + elif field.types[0] in reader.gguf_scalar_to_np: + print(' = {0}'.format(field.parts[-1][0]), end = '') + print() + if args.no_tensors: + return + print(f'\n* Dumping {len(reader.tensors)} tensor(s)') + for n, tensor in enumerate(reader.tensors, 1): + prettydims = ', '.join('{0:5}'.format(d) for d in list(tensor.shape) + [1] * (4 - len(tensor.shape))) + print(f' {n:5}: {tensor.n_elements:10} | {prettydims} | {tensor.tensor_type.name:7} | {tensor.name}') + + +def dump_metadata_json(reader: GGUFReader, args: argparse.Namespace) -> None: + import json + host_endian, file_endian = get_file_host_endian(reader) + metadata: dict[str, Any] = {} + tensors: dict[str, Any] = {} + result = { + "filename": args.model, + "endian": file_endian, + "metadata": metadata, + "tensors": tensors, + } + for idx, field in enumerate(reader.fields.values()): + curr: dict[str, Any] = { + "index": idx, + "type": field.types[0].name if field.types else 'UNKNOWN', + "offset": field.offset, + } + metadata[field.name] = curr + if field.types[:1] == [GGUFValueType.ARRAY]: + curr["array_types"] = [t.name for t in field.types][1:] + if not args.json_array: + continue + itype = field.types[-1] + if itype == GGUFValueType.STRING: + curr["value"] = [str(bytes(field.parts[idx]), encoding="utf-8") for idx in field.data] + else: + curr["value"] = [pv for idx in field.data for pv in field.parts[idx].tolist()] + elif field.types[0] == GGUFValueType.STRING: + curr["value"] = str(bytes(field.parts[-1]), encoding="utf-8") + else: + curr["value"] = field.parts[-1].tolist()[0] + if not args.no_tensors: + for idx, tensor in enumerate(reader.tensors): + tensors[tensor.name] = { + "index": idx, + "shape": tensor.shape.tolist(), + "type": tensor.tensor_type.name, + "offset": tensor.field.offset, + } + json.dump(result, sys.stdout) + + +def main() -> None: + parser = argparse.ArgumentParser(description="Dump GGUF file metadata") + parser.add_argument("model", type=str, help="GGUF format model filename") + parser.add_argument("--no-tensors", action="store_true", help="Don't dump tensor metadata") + parser.add_argument("--json", action="store_true", help="Produce JSON output") + parser.add_argument("--json-array", action="store_true", help="Include full array values in JSON output (long)") + args = parser.parse_args(None if len(sys.argv) > 1 else ["--help"]) + if not args.json: + print(f'* Loading: {args.model}') + reader = GGUFReader(args.model, 'r') + if args.json: + dump_metadata_json(reader, args) + else: + dump_metadata(reader, args) + + +if __name__ == '__main__': + main() diff --git a/extensions/model-extension/scripts/gguf-py/scripts/gguf-set-metadata.py b/extensions/model-extension/scripts/gguf-py/scripts/gguf-set-metadata.py new file mode 100755 index 000000000..3ebdfa898 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/scripts/gguf-set-metadata.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 +import argparse +import os +import sys +from pathlib import Path + +# Necessary to load the local gguf package +if "NO_LOCAL_GGUF" not in os.environ and (Path(__file__).parent.parent.parent / 'gguf-py').exists(): + sys.path.insert(0, str(Path(__file__).parent.parent)) + +from gguf import GGUFReader # noqa: E402 + + +def minimal_example(filename: str) -> None: + reader = GGUFReader(filename, 'r+') + field = reader.fields['tokenizer.ggml.bos_token_id'] + if field is None: + return + part_index = field.data[0] + field.parts[part_index][0] = 2 # Set tokenizer.ggml.bos_token_id to 2 + # + # So what's this field.data thing? It's helpful because field.parts contains + # _every_ part of the GGUF field. For example, tokenizer.ggml.bos_token_id consists + # of: + # + # Part index 0: Key length (27) + # Part index 1: Key data ("tokenizer.ggml.bos_token_id") + # Part index 2: Field type (4, the id for GGUFValueType.UINT32) + # Part index 3: Field value + # + # Note also that each part is an NDArray slice, so even a part that + # is only a single value like the key length will be a NDArray of + # the key length type (numpy.uint32). + # + # The .data attribute in the Field is a list of relevant part indexes + # and doesn't contain internal GGUF details like the key length part. + # In this case, .data will be [3] - just the part index of the + # field value itself. + + +def set_metadata(reader: GGUFReader, args: argparse.Namespace) -> None: + field = reader.get_field(args.key) + if field is None: + print(f'! Field {repr(args.key)} not found', file = sys.stderr) + sys.exit(1) + # Note that field.types is a list of types. This is because the GGUF + # format supports arrays. For example, an array of UINT32 would + # look like [GGUFValueType.ARRAY, GGUFValueType.UINT32] + handler = reader.gguf_scalar_to_np.get(field.types[0]) if field.types else None + if handler is None: + print( + f'! This tool only supports changing simple values, {repr(args.key)} has unsupported type {field.types}', + file = sys.stderr, + ) + sys.exit(1) + current_value = field.parts[field.data[0]][0] + new_value = handler(args.value) + print(f'* Preparing to change field {repr(args.key)} from {current_value} to {new_value}') + if current_value == new_value: + print(f'- Key {repr(args.key)} already set to requested value {current_value}') + sys.exit(0) + if args.dry_run: + sys.exit(0) + if not args.force: + print('*** Warning *** Warning *** Warning **') + print('* Changing fields in a GGUF file can make it unusable. Proceed at your own risk.') + print('* Enter exactly YES if you are positive you want to proceed:') + response = input('YES, I am sure> ') + if response != 'YES': + print("You didn't enter YES. Okay then, see ya!") + sys.exit(0) + field.parts[field.data[0]][0] = new_value + print('* Field changed. Successful completion.') + + +def main() -> None: + parser = argparse.ArgumentParser(description="Set a simple value in GGUF file metadata") + parser.add_argument("model", type=str, help="GGUF format model filename") + parser.add_argument("key", type=str, help="Metadata key to set") + parser.add_argument("value", type=str, help="Metadata value to set") + parser.add_argument("--dry-run", action="store_true", help="Don't actually change anything") + parser.add_argument("--force", action="store_true", help="Change the field without confirmation") + args = parser.parse_args(None if len(sys.argv) > 1 else ["--help"]) + print(f'* Loading: {args.model}') + reader = GGUFReader(args.model, 'r' if args.dry_run else 'r+') + set_metadata(reader, args) + + +if __name__ == '__main__': + main() diff --git a/extensions/model-extension/scripts/gguf-py/tests/test_gguf.py b/extensions/model-extension/scripts/gguf-py/tests/test_gguf.py new file mode 100644 index 000000000..0adeb7d55 --- /dev/null +++ b/extensions/model-extension/scripts/gguf-py/tests/test_gguf.py @@ -0,0 +1,7 @@ +import gguf # noqa: F401 + +# TODO: add tests + + +def test_write_gguf() -> None: + pass diff --git a/extensions/huggingface-extension/scripts/install_deps.py b/extensions/model-extension/scripts/install_deps.py similarity index 100% rename from extensions/huggingface-extension/scripts/install_deps.py rename to extensions/model-extension/scripts/install_deps.py diff --git a/extensions/huggingface-extension/scripts/version.txt b/extensions/model-extension/scripts/version.txt similarity index 100% rename from extensions/huggingface-extension/scripts/version.txt rename to extensions/model-extension/scripts/version.txt diff --git a/extensions/model-extension/src/@types/InvalidHostError.ts b/extensions/model-extension/src/@types/InvalidHostError.ts new file mode 100644 index 000000000..47262206e --- /dev/null +++ b/extensions/model-extension/src/@types/InvalidHostError.ts @@ -0,0 +1,6 @@ +export class InvalidHostError extends Error { + constructor(message: string) { + super(message) + this.name = 'InvalidHostError' + } +} diff --git a/extensions/model-extension/src/@types/NotSupportModelError.ts b/extensions/model-extension/src/@types/NotSupportModelError.ts new file mode 100644 index 000000000..0a1946176 --- /dev/null +++ b/extensions/model-extension/src/@types/NotSupportModelError.ts @@ -0,0 +1,6 @@ +export class NotSupportedModelError extends Error { + constructor(message: string) { + super(message) + this.name = 'NotSupportedModelError' + } +} diff --git a/extensions/model-extension/src/@types/global.d.ts b/extensions/model-extension/src/@types/global.d.ts index a72b5188e..3878d4bf2 100644 --- a/extensions/model-extension/src/@types/global.d.ts +++ b/extensions/model-extension/src/@types/global.d.ts @@ -1,8 +1,7 @@ export {} declare global { declare const DEFAULT_MODEL: object - declare const MODULE_PATH: string - declare const VERSION: string + declare const NODE: string interface Core { api: APIFunctions diff --git a/extensions/model-extension/src/index.ts b/extensions/model-extension/src/index.ts index 9dd106868..31e20429e 100644 --- a/extensions/model-extension/src/index.ts +++ b/extensions/model-extension/src/index.ts @@ -17,9 +17,19 @@ import { baseName, GpuSetting, DownloadRequest, + executeOnMain, + HuggingFaceRepoData, + Quantization, + log, + getFileSize, + AllQuantizations, + ModelEvent, } from '@janhq/core' import { extractFileName } from './helpers/path' +import { GGUFMetadata, gguf } from '@huggingface/gguf' +import { NotSupportedModelError } from './@types/NotSupportModelError' +import { InvalidHostError } from './@types/InvalidHostError' /** * A extension for models @@ -35,6 +45,17 @@ export default class JanModelExtension extends ModelExtension { ] private static readonly _tensorRtEngineFormat = '.engine' private static readonly _supportedGpuArch = ['ampere', 'ada'] + private static readonly _safetensorsRegexs = [ + /model\.safetensors$/, + /model-[0-9]+-of-[0-9]+\.safetensors$/, + ] + private static readonly _pytorchRegexs = [ + /pytorch_model\.bin$/, + /consolidated\.[0-9]+\.pth$/, + /pytorch_model-[0-9]+-of-[0-9]+\.bin$/, + /.*\.pt$/, + ] + interrupted = false /** * Called when the extension is loaded. @@ -49,7 +70,7 @@ export default class JanModelExtension extends ModelExtension { * Called when the extension is unloaded. * @override */ - onUnload(): void {} + async onUnload() {} /** * Downloads a machine learning model. @@ -65,7 +86,11 @@ export default class JanModelExtension extends ModelExtension { // create corresponding directory const modelDirPath = await joinPath([JanModelExtension._homeDir, model.id]) if (!(await fs.existsSync(modelDirPath))) await fs.mkdir(modelDirPath) - + const modelJsonPath = await joinPath([modelDirPath, 'model.json']) + if (!(await fs.existsSync(modelJsonPath))) { + await fs.writeFileSync(modelJsonPath, JSON.stringify(model, null, 2)) + events.emit(ModelEvent.OnModelsUpdate, {}) + } if (model.engine === InferenceEngine.nitro_tensorrt_llm) { if (!gpuSettings || gpuSettings.gpus.length === 0) { console.error('No GPU found. Please check your GPU setting.') @@ -140,6 +165,79 @@ export default class JanModelExtension extends ModelExtension { } } + private toHuggingFaceUrl(repoId: string): string { + try { + const url = new URL(repoId) + if (url.host !== 'huggingface.co') { + throw new InvalidHostError(`Invalid Hugging Face repo URL: ${repoId}`) + } + + const paths = url.pathname.split('/').filter((e) => e.trim().length > 0) + if (paths.length < 2) { + throw new InvalidHostError(`Invalid Hugging Face repo URL: ${repoId}`) + } + + return `${url.origin}/api/models/${paths[0]}/${paths[1]}` + } catch (err) { + if (err instanceof InvalidHostError) { + throw err + } + + if (repoId.startsWith('https')) { + throw new Error(`Cannot parse url: ${repoId}`) + } + + return `https://huggingface.co/api/models/${repoId}` + } + } + + async fetchHuggingFaceRepoData(repoId: string): Promise { + const sanitizedUrl = this.toHuggingFaceUrl(repoId) + console.debug('sanitizedUrl', sanitizedUrl) + + const res = await fetch(sanitizedUrl) + const data = (await res.json()) as HuggingFaceRepoData + + if (data.tags.indexOf('gguf') === -1) { + throw new NotSupportedModelError( + `${repoId} is not supported. Only GGUF models are supported.` + ) + } + + const promises: Promise[] = [] + + // fetching file sizes + const url = new URL(sanitizedUrl) + const paths = url.pathname.split('/').filter((e) => e.trim().length > 0) + + for (const sibling of data.siblings) { + const downloadUrl = `https://huggingface.co/${paths[2]}/${paths[3]}/resolve/main/${sibling.rfilename}` + sibling.downloadUrl = downloadUrl + promises.push(getFileSize(downloadUrl)) + } + + const result = await Promise.all(promises) + for (let i = 0; i < data.siblings.length; i++) { + data.siblings[i].fileSize = result[i] + } + + AllQuantizations.forEach((quantization) => { + data.siblings.forEach((sibling) => { + if (!sibling.quantization && sibling.rfilename.includes(quantization)) { + sibling.quantization = quantization + } + }) + }) + + data.modelUrl = `https://huggingface.co/${paths[2]}/${paths[3]}` + return data + } + + async fetchModelMetadata(url: string): Promise { + const { metadata } = await gguf(url) + return metadata + } + /** * Specifically for Jan server. */ @@ -674,4 +772,218 @@ export default class JanModelExtension extends ModelExtension { importedModels ) } + + private getGgufFileList( + repoData: HuggingFaceRepoData, + selectedQuantization: Quantization + ): string[] { + return repoData.siblings + .map((file) => file.rfilename) + .filter((file) => file.indexOf(selectedQuantization) !== -1) + .filter((file) => file.endsWith('.gguf')) + } + + private getFileList(repoData: HuggingFaceRepoData): string[] { + // SafeTensors first, if not, then PyTorch + const modelFiles = repoData.siblings + .map((file) => file.rfilename) + .filter((file) => + JanModelExtension._safetensorsRegexs.some((regex) => regex.test(file)) + ) + if (modelFiles.length === 0) { + repoData.siblings.forEach((file) => { + if ( + JanModelExtension._pytorchRegexs.some((regex) => + regex.test(file.rfilename) + ) + ) { + modelFiles.push(file.rfilename) + } + }) + } + + const vocabFiles = [ + 'tokenizer.model', + 'vocab.json', + 'tokenizer.json', + ].filter((file) => + repoData.siblings.some((sibling) => sibling.rfilename === file) + ) + + const etcFiles = repoData.siblings + .map((file) => file.rfilename) + .filter( + (file) => + (file.endsWith('.json') && !vocabFiles.includes(file)) || + file.endsWith('.txt') || + file.endsWith('.py') || + file.endsWith('.tiktoken') + ) + + return [...modelFiles, ...vocabFiles, ...etcFiles] + } + + private async getModelDirPath(repoID: string): Promise { + const modelName = repoID.split('/').slice(1).join('/') + return joinPath([await getJanDataFolderPath(), 'models', modelName]) + } + + private async getConvertedModelPath(repoID: string): Promise { + const modelName = repoID.split('/').slice(1).join('/') + const modelDirPath = await this.getModelDirPath(repoID) + return joinPath([modelDirPath, modelName + '.gguf']) + } + + private async getQuantizedModelPath( + repoID: string, + quantization: Quantization + ): Promise { + const modelName = repoID.split('/').slice(1).join('/') + const modelDirPath = await this.getModelDirPath(repoID) + return joinPath([ + modelDirPath, + modelName + `-${quantization.toLowerCase()}.gguf`, + ]) + } + private getCtxLength(config: { + max_sequence_length?: number + max_position_embeddings?: number + n_ctx?: number + }): number { + if (config.max_sequence_length) return config.max_sequence_length + if (config.max_position_embeddings) return config.max_position_embeddings + if (config.n_ctx) return config.n_ctx + return 4096 + } + + /** + * Converts a Hugging Face model to GGUF. + * @param repoID - The repo ID of the model to convert. + * @returns A promise that resolves when the conversion is complete. + */ + async convert(repoID: string): Promise { + if (this.interrupted) return + const modelDirPath = await this.getModelDirPath(repoID) + const modelOutPath = await this.getConvertedModelPath(repoID) + if (!(await fs.existsSync(modelDirPath))) { + throw new Error('Model dir not found') + } + if (await fs.existsSync(modelOutPath)) return + + await executeOnMain(NODE, 'installDeps') + if (this.interrupted) return + + try { + await executeOnMain( + NODE, + 'convertHf', + modelDirPath, + modelOutPath + '.temp' + ) + } catch (err) { + log(`[Conversion]::Debug: Error using hf-to-gguf.py, trying convert.py`) + + let ctx = 4096 + try { + const config = await fs.readFileSync( + await joinPath([modelDirPath, 'config.json']), + 'utf8' + ) + const configParsed = JSON.parse(config) + ctx = this.getCtxLength(configParsed) + configParsed.max_sequence_length = ctx + await fs.writeFileSync( + await joinPath([modelDirPath, 'config.json']), + JSON.stringify(configParsed, null, 2) + ) + } catch (err) { + log(`${err}`) + // ignore missing config.json + } + + const bpe = await fs.existsSync( + await joinPath([modelDirPath, 'vocab.json']) + ) + + await executeOnMain( + NODE, + 'convert', + modelDirPath, + modelOutPath + '.temp', + { + ctx, + bpe, + } + ) + } + await executeOnMain( + NODE, + 'renameSync', + modelOutPath + '.temp', + modelOutPath + ) + + for (const file of await fs.readdirSync(modelDirPath)) { + if ( + modelOutPath.endsWith(file) || + (file.endsWith('config.json') && !file.endsWith('_config.json')) + ) + continue + await fs.unlinkSync(await joinPath([modelDirPath, file])) + } + } + + /** + * Quantizes a GGUF model. + * @param repoID - The repo ID of the model to quantize. + * @param quantization - The quantization to use. + * @returns A promise that resolves when the quantization is complete. + */ + async quantize(repoID: string, quantization: Quantization): Promise { + if (this.interrupted) return + const modelDirPath = await this.getModelDirPath(repoID) + const modelOutPath = await this.getQuantizedModelPath(repoID, quantization) + if (!(await fs.existsSync(modelDirPath))) { + throw new Error('Model dir not found') + } + if (await fs.existsSync(modelOutPath)) return + + await executeOnMain( + NODE, + 'quantize', + await this.getConvertedModelPath(repoID), + modelOutPath + '.temp', + quantization + ) + await executeOnMain( + NODE, + 'renameSync', + modelOutPath + '.temp', + modelOutPath + ) + + await fs.unlinkSync(await this.getConvertedModelPath(repoID)) + } + + /** + * Cancels the convert of current Hugging Face model. + * @param repoID - The repository ID to cancel. + * @param repoData - The repository data to cancel. + * @returns {Promise} A promise that resolves when the download has been cancelled. + */ + async cancelConvert( + repoID: string, + repoData: HuggingFaceRepoData + ): Promise { + this.interrupted = true + const modelDirPath = await this.getModelDirPath(repoID) + const files = this.getFileList(repoData) + for (const file of files) { + const filePath = file + const localPath = await joinPath([modelDirPath, filePath]) + await abortDownload(localPath) + } + + executeOnMain(NODE, 'killProcesses') + } } diff --git a/extensions/huggingface-extension/src/node/index.ts b/extensions/model-extension/src/node/index.ts similarity index 100% rename from extensions/huggingface-extension/src/node/index.ts rename to extensions/model-extension/src/node/index.ts diff --git a/extensions/monitoring-extension/src/index.ts b/extensions/monitoring-extension/src/index.ts index 166627fd3..1d21fde77 100644 --- a/extensions/monitoring-extension/src/index.ts +++ b/extensions/monitoring-extension/src/index.ts @@ -1,7 +1,6 @@ import { GpuSetting, MonitoringExtension, - MonitoringInterface, OperatingSystemInfo, executeOnMain, } from '@janhq/core' diff --git a/extensions/monitoring-extension/src/node/index.ts b/extensions/monitoring-extension/src/node/index.ts index 049620026..980ee75d1 100644 --- a/extensions/monitoring-extension/src/node/index.ts +++ b/extensions/monitoring-extension/src/node/index.ts @@ -335,7 +335,7 @@ const updateCudaExistence = async ( // Attempt to query CUDA using NVIDIA SMI if (!cudaExists) { - await new Promise((resolve, reject) => { + await new Promise((resolve) => { exec('nvidia-smi', (error, stdout) => { if (!error) { const regex = /CUDA\s*Version:\s*(\d+\.\d+)/g diff --git a/extensions/tensorrt-llm-extension/package.json b/extensions/tensorrt-llm-extension/package.json index c8eafb10d..c5cb54809 100644 --- a/extensions/tensorrt-llm-extension/package.json +++ b/extensions/tensorrt-llm-extension/package.json @@ -55,7 +55,6 @@ "@janhq/core": "file:../../core", "decompress": "^4.2.1", "fetch-retry": "^5.0.6", - "path-browserify": "^1.0.1", "rxjs": "^7.8.1", "tcp-port-used": "^1.0.2", "terminate": "^2.6.1", diff --git a/uikit/src/modal/index.tsx b/uikit/src/modal/index.tsx index 1c0586637..288631c3d 100644 --- a/uikit/src/modal/index.tsx +++ b/uikit/src/modal/index.tsx @@ -33,7 +33,7 @@ const ModalContent = React.forwardRef< {children} diff --git a/web/containers/Layout/index.tsx b/web/containers/Layout/index.tsx index ed4a30477..6e3c78a94 100644 --- a/web/containers/Layout/index.tsx +++ b/web/containers/Layout/index.tsx @@ -20,6 +20,7 @@ import { SUCCESS_SET_NEW_DESTINATION } from '@/screens/Settings/Advanced/DataFol import CancelModelImportModal from '@/screens/Settings/CancelModelImportModal' import ChooseWhatToImportModal from '@/screens/Settings/ChooseWhatToImportModal' import EditModelInfoModal from '@/screens/Settings/EditModelInfoModal' +import HuggingFaceRepoDetailModal from '@/screens/Settings/HuggingFaceRepoDetailModal' import ImportModelOptionModal from '@/screens/Settings/ImportModelOptionModal' import ImportingModelModal from '@/screens/Settings/ImportingModelModal' import SelectingModelModal from '@/screens/Settings/SelectingModelModal' @@ -75,6 +76,7 @@ const BaseLayout = () => { {importModelStage === 'CONFIRM_CANCEL' && } + ) } diff --git a/web/containers/Providers/EventListener.tsx b/web/containers/Providers/EventListener.tsx index 20fc6dde2..b35ab2e43 100644 --- a/web/containers/Providers/EventListener.tsx +++ b/web/containers/Providers/EventListener.tsx @@ -2,7 +2,7 @@ import { PropsWithChildren, useCallback, useEffect } from 'react' import React from 'react' -import { DownloadEvent, events, DownloadState } from '@janhq/core' +import { DownloadEvent, events, DownloadState, ModelEvent } from '@janhq/core' import { useSetAtom } from 'jotai' import { setDownloadStateAtom } from '@/hooks/useDownloadState' @@ -64,6 +64,7 @@ const EventListenerWrapper = ({ children }: PropsWithChildren) => { if (state.downloadType !== 'extension') { setDownloadState(state) } + events.emit(ModelEvent.OnModelsUpdate, {}) }, [setDownloadState] ) diff --git a/web/helpers/atoms/HFConverter.atom.ts b/web/helpers/atoms/HFConverter.atom.ts deleted file mode 100644 index 717ab05a9..000000000 --- a/web/helpers/atoms/HFConverter.atom.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { HuggingFaceRepoData } from '@janhq/core' -import { atom } from 'jotai' - -export const repoIDAtom = atom(null) -export const loadingAtom = atom(false) -export const fetchErrorAtom = atom(null) -export const conversionStatusAtom = atom< - | 'downloading' - | 'converting' - | 'quantizing' - | 'done' - | 'stopping' - | 'generating' - | null ->(null) -export const conversionErrorAtom = atom(null) -const _repoDataAtom = atom(null) -const _unsupportedAtom = atom(false) - -export const resetAtom = atom(null, (_get, set) => { - set(repoIDAtom, null) - set(loadingAtom, false) - set(fetchErrorAtom, null) - set(conversionStatusAtom, null) - set(conversionErrorAtom, null) - set(_repoDataAtom, null) - set(_unsupportedAtom, false) -}) - -export const repoDataAtom = atom( - (get) => get(_repoDataAtom), - (_get, set, repoData: HuggingFaceRepoData) => { - set(_repoDataAtom, repoData) - if ( - !repoData.tags.includes('transformers') || - (!repoData.tags.includes('pytorch') && - !repoData.tags.includes('safetensors')) - ) { - set(_unsupportedAtom, true) - } - } -) - -export const unsupportedAtom = atom((get) => get(_unsupportedAtom)) diff --git a/web/helpers/atoms/HuggingFace.atom.ts b/web/helpers/atoms/HuggingFace.atom.ts new file mode 100644 index 000000000..514efb186 --- /dev/null +++ b/web/helpers/atoms/HuggingFace.atom.ts @@ -0,0 +1,12 @@ +import { HuggingFaceRepoData } from '@janhq/core/.' +import { atom } from 'jotai' + +// modals +export type ImportHuggingFaceModelStage = 'NONE' | 'REPO_DETAIL' + +export const importingHuggingFaceRepoDataAtom = atom< + HuggingFaceRepoData | undefined +>(undefined) + +export const importHuggingFaceModelStageAtom = + atom('NONE') diff --git a/web/hooks/useConvertHuggingFaceModel.ts b/web/hooks/useConvertHuggingFaceModel.ts deleted file mode 100644 index 0616c4ee7..000000000 --- a/web/hooks/useConvertHuggingFaceModel.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { - ExtensionTypeEnum, - HuggingFaceExtension, - HuggingFaceRepoData, - Quantization, -} from '@janhq/core' - -import { useAtomValue, useSetAtom } from 'jotai' - -import { extensionManager } from '@/extension/ExtensionManager' -import { ignoreSslAtom, proxyAtom } from '@/helpers/atoms/AppConfig.atom' -import { - conversionStatusAtom, - conversionErrorAtom, -} from '@/helpers/atoms/HFConverter.atom' - -export const useConvertHuggingFaceModel = () => { - const proxy = useAtomValue(proxyAtom) - const ignoreSSL = useAtomValue(ignoreSslAtom) - const setConversionStatus = useSetAtom(conversionStatusAtom) - const setConversionError = useSetAtom(conversionErrorAtom) - - const convertHuggingFaceModel = async ( - repoID: string, - repoData: HuggingFaceRepoData, - quantization: Quantization - ) => { - const extension = await extensionManager.get( - ExtensionTypeEnum.HuggingFace - ) - try { - if (extension) { - extension.interrupted = false - } - setConversionStatus('downloading') - await extension?.downloadModelFiles(repoID, repoData, { - ignoreSSL, - proxy, - }) - if (extension?.interrupted) return - setConversionStatus('converting') - await extension?.convert(repoID) - if (extension?.interrupted) return - setConversionStatus('quantizing') - await extension?.quantize(repoID, quantization) - if (extension?.interrupted) return - setConversionStatus('generating') - await extension?.generateMetadata(repoID, repoData, quantization) - setConversionStatus('done') - } catch (err) { - if (extension?.interrupted) return - extension?.cancelConvert(repoID, repoData) - if (typeof err === 'number') { - setConversionError(new Error(`exit code: ${err}`)) - } else { - setConversionError(err as Error) - } - console.error(err) - } - } - - const cancelConvertHuggingFaceModel = async ( - repoID: string, - repoData: HuggingFaceRepoData - ) => { - const extension = await extensionManager.get( - ExtensionTypeEnum.HuggingFace - ) - - setConversionStatus('stopping') - await extension?.cancelConvert(repoID, repoData) - setConversionStatus(null) - } - - return { - convertHuggingFaceModel, - cancelConvertHuggingFaceModel, - } -} diff --git a/web/hooks/useGetHFRepoData.ts b/web/hooks/useGetHFRepoData.ts index d14458854..3dab2c72e 100644 --- a/web/hooks/useGetHFRepoData.ts +++ b/web/hooks/useGetHFRepoData.ts @@ -1,31 +1,41 @@ -import { useAtomValue, useSetAtom } from 'jotai' +import { useCallback, useState } from 'react' import { - repoDataAtom, - repoIDAtom, - loadingAtom, - fetchErrorAtom, -} from '@/helpers/atoms/HFConverter.atom' + ExtensionTypeEnum, + HuggingFaceRepoData, + ModelExtension, +} from '@janhq/core' + +import { extensionManager } from '@/extension' export const useGetHFRepoData = () => { - const repoID = useAtomValue(repoIDAtom) - const setRepoData = useSetAtom(repoDataAtom) - const setLoading = useSetAtom(loadingAtom) - const setFetchError = useSetAtom(fetchErrorAtom) + const [error, setError] = useState(undefined) + const [loading, setLoading] = useState(false) - const getRepoData = async () => { - setLoading(true) + const getHfRepoData = useCallback(async (repoId: string) => { try { - const res = await fetch(`https://huggingface.co/api/models/${repoID}`) - const data = await res.json() - setRepoData(data) + setError(undefined) + setLoading(true) + const data = await extensionGetHfRepoData(repoId) + return data } catch (err) { - setFetchError( - Error("The repo does not exist or you don't have access to it.") - ) + console.error(err) + if (err instanceof Error) { + setError(err.message) + } + throw err + } finally { + setLoading(false) } - setLoading(false) - } + }, []) - return getRepoData + return { loading, error, getHfRepoData } +} + +const extensionGetHfRepoData = async ( + repoId: string +): Promise => { + return extensionManager + .get(ExtensionTypeEnum.Model) + ?.fetchHuggingFaceRepoData(repoId) } diff --git a/web/public/icons/Jan_AppIcon.svg b/web/public/icons/Jan_AppIcon.svg deleted file mode 100644 index a823ab3ed..000000000 --- a/web/public/icons/Jan_AppIcon.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/web/public/icons/ViewGrid.svg b/web/public/icons/ViewGrid.svg deleted file mode 100644 index 2a1fd31b1..000000000 --- a/web/public/icons/ViewGrid.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/web/public/icons/avatar.svg b/web/public/icons/avatar.svg deleted file mode 100644 index 30d300289..000000000 --- a/web/public/icons/avatar.svg +++ /dev/null @@ -1 +0,0 @@ -U \ No newline at end of file diff --git a/web/public/icons/ic_sidebar_off.svg b/web/public/icons/ic_sidebar_off.svg deleted file mode 100644 index 64dbf3dab..000000000 --- a/web/public/icons/ic_sidebar_off.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/web/public/icons/ic_sidebar_on.svg b/web/public/icons/ic_sidebar_on.svg deleted file mode 100644 index 5a0c91a53..000000000 --- a/web/public/icons/ic_sidebar_on.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/web/public/images/banner.jpg b/web/public/images/banner.jpg deleted file mode 100644 index dddc713a99ef164d8edf57b4e771127aed57c5d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309916 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 R-fj5S<_K*7d-r?ve*kL|YDxeA diff --git a/web/public/images/mobile.jpg b/web/public/images/mobile.jpg deleted file mode 100644 index f33682659c216a3011944a1e3c80a95cebcd7475..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 347270 zcmdqJcTkgEwEr7AC=dYwsX=K{qk^Ech)5F=vCtt(kq*)XBqRdTL_k2`6<&x+6A@5) zP3T2Lqzeckp(zkZsE;Is-}9dHn{(#gnRD)$d(Lm}%nifjk34zi*?X`3U2A>T+By1h zG!Hp(-N@7k!oz|waH*dkjbkqjn<77cGqgj~vAk2JBEPPBy zT@V-q!o>Ek_lErM7ZWoJD;qlpC)cs#;03iOAk0iGEX=GdY;3Ho;MI}f=MYvtHvZG+ z_1Oh1A8?!rIC&u|?JcMD)z9sMw}&Y*YR-YtT*rijPl<@i%E_NqP*lIDp?T@Dmccbc zBV!ZO>v!(nv$D3awR3TGd+6@r=@k?l@;Eds{7KBS*tqzF#OLW5uQIc;|9YMCuAs1} zxa585hpOtD+PeCN#-@(WuI`@RzWy&GqhsR}lRu`WiKKfKjUIz4h8>N_*mIapJ(USx8!&bAaLeF6z9pS zX>UKbb4jb+rU*I*4j&VeQ76h${~6l9jO@QQu;~9+Bm1|3{rkA4A>1rX;Nr3HK@boI z<1FM2^V4IH{~x`TVlXa6wvMZIdF0}}5*z!$&`1m>h$k;Iv#3eEde(8)LFbYEOuJ}J zhPis8xW~thFK==nbk@UK%=}U+AZM{28c_~d4Uja7Xa=ZjBis{1#G&Y{y{5@H(wL>- zLVYU`8y?_KY$U@TnT9|)v8T#w-V$?|bONuH%k>AEmC^we@(2<$qIY(cI^<2$X7u6s zM?<*sJ<8t#QSX8H?&WFOFjUg}S}4?OPB3E1EtSk}Z`%U*mS_%FtQVGQE)NtSYbzZ= zkZMG7D1-Og5hS{8)!IL_2oNB0#QDPhS}#ZQt_nXMj(OpmYv0n^?7}!4aM$HH8CXFa zL@d#dAbk^*6}rUA5roZ^LW?26o)N0+lbmlC#g$W^#&obcyh{S(g0 z+^{H+8A^{Gf-lih%TP>55RQ-N@1l12{{z`iD2LEzB2|A}5#r#Mh+e>>^Ci!kG3UEXAlYv3Oc6bsA{{ zct-}i-1`jVQc6e~FCKWBI5>Faz~bqqZ?2w5Th{hs*uB7QMg1jS`PqTGfzF_x1LrFX z)2@qCD=G!tXx`|rPD%}}HiLDqy{QFlR(6YVx0#Jlh!1OzMSlkIU;RsFbi~bBaN+iq zqKDcQzi3LP6Fa`>Zz={?$9D$3I)ZKQ<3{|+A!3&cQ0wVRxtAZtUGtHsNV)gv(M<*J z(f@BY5A$WW=bVN4;nH!ZEQ_){9bKNE9X8WRH(5M$=B)C!F2(mUFWDey7sd|+B??UA2WzM{59v9nWE;c_`EiLuugkSsT1U&_^eUII;Z#8d*Co*(KeEe!Ep+Lqh zN<}s*T6<8tBM{1MH+PNKN@;0W=!?1G$t~WuvZEOT=Y4XbN6cK}bHXbm3iCbP)A}E# zdrBHV)V0kUI4|EQlW~PFTE9<*@8=^A<}vI2?*TkZV+JGIiMP<#=Wns(FqREo(~~lO z&f3}i{Cv;3KZ4ZR?0r~vUQGIB zBsHo(E9zyH{9}e-v1EXP39uvM~4Nhfx1gR3R6?)58&pBAxtqbpZ+|5PIE@0O0dq<5#=%cs$v4yZ> zn0Yb+P#Wsojf0C~I-UVb{*uGeKrb;e1sicDPBwKKEwF}Tf1wS{4w~+-xgXoNSQEiO zEbDnzRtN1E6YJ@ctyHC(8Wg(EVT_LShef6k3}ubfo2VmJThBAZoom-FJ!zCK z@OFMLHrHcHuLLu{^8I9VXHdl_D);$qjZ*c%flq(l9aIi%BTN{=j9KJo_nwCGBEXDh zi~fc^;j}4fm>tVF53t-B|EsP|$Xrw+Z1wx)3sQVTZeknvn*#%GYgepo>J`;D);A~0 z*EYm0b3t5l=I-Xm-|173@#$+z(Pw?mZhnOgauRZj>Hqi}hbHL=A{^%5<|HyfcOf0x zOLTy827a=$voBupIqNB#`RzwJnP@8Cn70tkxtMd!2*Pl~`&I&qJLrpz zV=eIcfvI2&v;EJ0w*1_aYdrf2F9I*LM^=~|ORgfy#$UgXt90SsirUX>swaha4>4AV zXee+tm0Z8DIfGmfpzBfg8WxD5u@}YuQhw>E<#EuumsQX2#ZVn9vH`yDB=GNklu=v_ z2IR(3l{HA&8c~^d6-SUlH~FvYc;XZVlR&@oz`FqcwBa+e*$Vl(h+;PH-@Q3)Kyr^|@X(I| z5hToWgg}d1#2$SjPkp$QI-t~W^8v^xI zZ`;=9kZ*1cRiip??|vz631r**N^%~s8d^Sw?93W7c$UB|abY!U(^qp{p0Y73E_lHc zcOIxM`gvA&gw#pmY3b{%=IA3|foTBS3?5tXYE9sa!lV%Zr)m=mx5|`5(QLp1l{d8R zp}3CK+~si{ch_#Hl)10s-w&b&A?OIY85oVg5w6K@6-9tC?LOnX6C~WMwich#B1@r> zd^0~wFTUUrg~eH?UyHAN9k%u9(ze>ae9;p8qRJ7(v;2%wDUOFRg=f`y^1ESr3Z+kx zPiCANJa_DRVYZztp=%~=HsN?)Gkc&3%Sk5s`Vpl4DtVoi?OPTGv5hd+ z698v)4o|sDVA0{CinYV4CwrRJ+ZwWM0nGcbh})Ux-sWiIUOzdE_@WwO5sw$y@D18}I>;VH@{bR7 zL!(}%hh^gK)bwZm?1j5y+MGt4JPxG+3os^p3Od|eyZBPiB zFa7fOii$nfS|IUV*fy~wYon;nB4VME>zCGDHxtFLAuN)_r;8Va94f1oUWX!#(cBf5E#89x6 z^{p@MnNQu^q{^5ta7s%>UuJz|2vPYzDcBg{BM8MF11Q=9You@GG&Pj;q$WxWF#hn< z69*sLS*!dRh9?>3(|qkT(lw6jWzPS3F|Crr@0@L8Znv*y)Pzb?k3B?}Y+2Hr(8EnD z@eC2KPx>D&Q8l|bnkf~pt_|)bBMh^CU2(FS^0EB zo}1jkV@?$~VM`1DjBtz|NgW`CKE?6Ul_^X6NjPbgIn^m~zLE{_HaFjY(wl%X!0_f3 zPoH*{j+4s|iO6l7*7nxEo3pWMQ%=k>j4?P2M9ilUC?@b|JmtFoQ#(w2O|yhR53;5{ zMZN5JWhz1}7MqKy@RqvRPQk>e`aduuLy1H2vahB+pZF+wsx}7rp$scJrZc}jvU!Tm z1nd`9+7aSmYb1+K1P9%UBAm#OLWw6C=aTB5)gT0Z+hx^Ls273C;^89*@mzInW9E)9 zKIz7o_&F!3Q=09ElJ>D9fxW?qZKgJB)Z ze0H+B_v?96_Yr@Nu5xI{%Vv)xseMOc0!=~&+dk54v^J(FpSH!V+Rx> zLQZvsT65xOZ3{t#M#Z(mVudBXFE@v?%RL`K?W)<@nVtqi(qfqA){`; zM2{m9a6*9Zf^~z*Q;4J2+y#p7WWusL3;&mpH1%g$o@Vs1h_|%vVT8qRjFbDXp$-h7 zW6e0GP1LN7Ct=&6Q@y0+Y{~Y}5O*S6B+R%g^mIUDhBc)(wS=VPGN5*VThN||-UW0g8ctbT6584a1+C{e^u(o={dE0;Fl?Ki z(2Icdmjfi}p)aEgD@6m#G1IC|utFpkVxF7|$l$x&>QlQ9>U*)#*?~T`*}X@QgIIEL;Pcd&ZM9GgQrxhr*aufj+3yNRX!X$0wTZG<`o3+|Rzlxes_K(?DHHe3^Z#Mq z!?HceIF>=Ptz37Z380*T_7c!7rugj?QlK5{ueR+;u;gn^PRS9>myaujJszc*b*J|P z%G7^nR3SB2W(LQc6GHQ`<@R!e<`Xt16Bz? z9aTSWD;yq%lUkJtzinsqm5CAiii!RO(|!dfJQv1s4|INYzX;Vsodf3l3zmnVKXtVb zSZ#tvt1nab=`s^`*<>}^4Iq0VWPE%s-Y>h}t|UQ6B!skv7w}4pEU{~N&RAZondI*h z7sgm@Yi~|XcH_Cxf??Hrtw6YZkN?!>e0L#|8}G9DJR4SPv93$(Yf+-i4PBvzcJTyt zqAtY!FCTN z;00S$NQfD=z1bs3Y$r8(v=>vYNk1t)Z?V2PPl%qtfDyYt#cz9Fqwzgs5XUpwB2k8t zdcGKjaF}Gscp^nw%olVudqm^XLP$waz9Hg3vVe6}_2;Z_w|G8{lM7_{&z7&mrTPI;RH{v_xW%`A8CL6R{LLPGGPG$||5Dh!<;zdr#q)5CWy0UyF1 z!zF$_i7P5Y(l3r})Rw{GdE7iJ9PB$G91{e}Eq_3He;v%vS?BN=4*DZ1Ch_8C(x`_O z`pgLE)^sT2%grPj8GhUQ)hN7T_xLE785&fzrjN`UYE+ZNO!FQ*j-C!=t~y@$1WxDQ z-rJeL%ooC{-G<1Th;|38)DL;mCAwrL}rsOj&)urxf`LPQ(UMRznqmD-r2nEM<>(_chxq1Fgb`F$H6(;n7*eDNwE3;euXh zo>5ENB0RMu`fXCLq`>F;y8~jmWK3t4kk#rXPd`5UC6z0%1tyt5L+NfsoxmQlcv@eP zOv*J`M~PGH#zt(mHq3=5uAF%)^6x1r;>$~^mpu$y87>Wt4&z&5Vx|&3L07onu=T%D zR$aA{>x@AM*Xlovf0);?P<^8;77UQyybR=G4VI3%A|$j$W*1t1grD7ZDEa=@xiI2{ zAw=3C9J^M&Uc4Wnbbn<{IY0)VLLY73Fni(jTSE9*%Pq!qrYtDL$0v$Q~A1sN25Sc9E?#;W10%tqyY&NkhUdIrc@>3#xF)VV`Ew2FAv@O+gA zNuJEwNPEYgvOh4ovW<8w_Vsph#@~y~cA1$U<=JO9w`wPM4?WP&7()n(Z6%;USnm(; zARNQ^TD&ketv;`;CqSKiUTXmhvpoG`vD1?XPjK(S@r+LBZ<*}n+^c!faJal=WgXT! z-qP(^F?6tPyyHz10~cojD?&dn8y|lJ@q;~;6bCZjD8JMXpsLN&N@8^Ey_pdB#&LCp zii`d%VX2n>e;#-{>xtT`G7nzrf2DeFI9@leuzZaXfkwVQe9h>>Qf^oN7-Ad~BwnP# z*E^}XoecOGc?Z~)z!2w()U|}WHjlLpir?<904{6=y}y{;I#%i?hcD3hObo9K@^`Cn zyi_=9pOrV%T+01FM(Uvpa0YM1;aewN%-;RO*EMTXx0QIL!6Zfub zm30?dyHuTIO8wUHi`(1`A0!7jf@AMH+l;1i}c!} zWwgu0atM7#5C<%v37yx&Qp6aXG@9Iup=;grN_VSp7eS)sUce`rrj!DzX18c@(HnW>iLgP*ANFUA|@5ChrPmUs8EINb!g?*DDde<_EZTU5kAf&ZGp zr}Ma5arce5`Z)eV=>dWi3!+L%g0h|v>NMa&nd|M&dAEi>TSbwN(t#7TE%??r$!ENB zmT<8}KMXz)dNzgx$5$=XeZIPc$b9FBM(H0$As!MEvEn%KO1rZ~T)rldL1{K0C({KNQia1U`w_x7jxG5TN< zIJPj184%=7MUdc8xt&hz)X9{cOMWCu@%xL8dJH9E+4OJGy4K=COM8cRW<^&=%f4N? zm2To8vSYnINs(^HS97$%pCPJOI%zg!lr#k-!r~N-beFhGk~ErtMcf?Cw%H`pvQ{G0 zQuxWY5{=o>RpEU#oRg6Z%Zv&4u}|C|Io+gA=%12`X=i<;KmQzZ1UW|lF2fj{r3=^} zlM6%1V0?&;l7u!*;9V_}=M?c&>jWa@Tk7eWL#*CuAZ6?FZYmEDH`g!9qt-U3I9aJ$ z3u9hW5Uk5A84QiZJP7f>7RS5w!vVbi;uTu>GB?bh{CFwPHd_;_XIXO3r{}k&D1#^RdiXz;5lS5 z1U_Zlc1KAsuL8*GFcK@^H!qo;{!sV$v%n9#8~u!_Cdkfds5%qXIGL^xG@p9X3n$Xt z7`Nr9VG}*uRwUg3qR8hP)BeiUe{Sw=_qZl~eQ7MWWb1mX>Kv<`ZroqWe!F>IkK-+B z(@u+pE}J6#PbJ$K(S8X^FQ%Jn-(4w=J!N{m$lAmB<|M6lr~c06`rv}r#9Cjtg%(O{ zBJq5~=#sX5mNu7jR2-#BRYuYwtxr>0aQ)`7oztg2yvmy=7w>K3D^d;(g=UtrUM$sH zt0dL`mD_sulg+Ii+mxXKanYpDj=RP?ouJPJ{ccQzDrO$^a9n6v#&;N>p0*c;g&_zS z_e{dLQL@lD9f=2|O#z^@``~d>!P@jLz4z{_!K>2$& zGPP-I{JW$J3tT858J0F?&x15&Y2GmmO_}#{WcitPJUrs3sbV(nEZn_-pvNuKG; zYgT}Dz=G0ovwPek6{;n1QqMOWlmi7J^x@X32_4<{v!2t*#YOMDCIn10>1}YH~sdxbaC&hbyTi9N)|Tkrle9Z(uWfG zd61q5RL0?by@z4xX8hA{-IPQfnZ#OF#-rHPGT@y;v|Mv*vzlFeI%k3ay5~rKx z_FyP?H(zLJPTP4S;_{CJmh(!i@=NvCC>oh0+Ar&s`;ZBgeQDpLlN&*qJn43_8$&Dj z-limdBAoAw7+Y}CJg4q7hb3XI)bH6I2E=$r5b1dpzURFk@%uFZY4Zr8a#4vxI@Kfj z@_MUD3BE7AS_3hYw8ut4A)rT)2bdqD?I*5G41>JR24H%7N}Nw7@b?kq7+s02?bU^{ z@M5Byr`cJT)6Sij-$2X%U0438qW4gR<8=_ELk=5CeUiE^tcxK+<;@K*SYt>~*>l}L z{(3T(_WsJ=+O%R5P&xK`Gc*(5@Z94CHT2`+2+v zlF!>o9k@>r#Jj=yy*2rr1`1G;6TvD5M4!+MZJiN&x(+of{$rl#c#^Y&&kZTWp4&&I(X4ovEV{*axH^Q594O>ysi%u0F6T{0M(rbH3KPT(_x#$`Z)C; zxjJl)UOv>m%Mh0BO_DoZtQ*9g$$;G?$KAt3P^GJ;XI+EBDFZeX>#kRsE|&&du`zVB z53AMHsX3PlM!$Z&wAG2KVWJp!S^Uu6n*)s8!AzroCdn9sL0#$}+WNITpoo!DOB{Rm$^PZVH4QgS{tz2X z7M=9P-!Jk_KUMh7bVXFCsiM@`z}CwyHkUVUVvF=M^=;fWY04Ykx=vDjmx}t^Ix4#E zYUFrROT^Bp-_LNgt1lk6k)B?T^tT_Q8-JMdwi_I78LM2hRjshQ^zOn1qcr&qq6z8B zXQPA<32zir&a&Jwc7$7v!cm%Kj$)@amQz;0?f7&FTh5~xE{Z4GuaX~LS^XAm^0UC& zT$t->aEYp+T#?9QZ~RWv+ULJV%}tf2_l+h>{0qa}JE#D<_m*g8*EiQJ|JgYAbhjMS z8|Tf=Ma$ZZoPGIay(>Hx_wabF`^`M4n@CXIM3ZClwx(aAPd$F_n!m#KMOQqrd^vpS zk=Q?x{4I`yLQH!JgJVob7F6a4AgBUqcbEfDM2avpfyo=rA1gzPr^Cuo%=I@!gyV1& z-5twJ)l}~DP58muD~KYnL4-+P`mOXYlQ+=kM-Xo)Adg%(qxl1YVCGAxSy`W@bdp>r zvqtP^fS$F^tS6dXtpZ=UXh#rUl-c(?=G30pa~>pB^~1nZszMjzHpG%5htF|PazRT8 z0=o)ZxZ<91V=d?~m=YTHnlx zkO=A&-NS12dzX1?p4ZW|vaZWM*EM;fR|e^E;*E>ocx&Ex*-gTtT;<|{+MyAC{wIj4 zl=FJ&C)MU_H`lkR`wlf3d##69x@J+H{k@ze)Da|^z^yVebbVA$!7h9|H|Yp+!q#EX zy(DbUhQv1*i78yeD>scVl|P-l_vzh%?&MDD?a>ia@C}v-c2$CBIgG+E?!|)v;l(5YYlJV&))hBdGm-JLVBwEA9NP6YmXJ6z8D>= zS2TXhA(iTUmZeuGoTiN)!U~?rf`V4StjA3^j(cPk))G!>Zezex?gw?1l6auE_yfD> zQ;S$T2w+b_(D`5tE+y(Mha*Ub1r5R&Y(h<<{qsWS;Y`yg)n>Tff=tH(u?BZC;Iguf z`Pb(^+@zwez_3Vu%={<_+&EHQ8*{Hxm|M_ z7k!~{Txfg0KK~WdpKU6P!CiCsVP~Zg^9)mmSpTzdD#pb3J`hVpCg6Ej!rJug1`zQ( zn~Ar$Y(I%VyL-!wr^{Cg#!3fQH^u@nU&&y$PgI99qxgZ^lProy5FVWRufBa28Cdl+ z{n{uR=JXljr?}VGb>gI&+ZB$Lp)P;m44f`lMtsnqCx7@9B2Y&3(-On{f$rq?dUJ81M(>F1z2Zpg1zemLkDnK@aHra zAj7LnTJ+y}Zb|#F?N!Cp2=y?jGc6RJFp-Mp<KB;8QLO7UZ|o z72^K-Z_4ow(d-v`r|DNG)@ufA%9S@O)Q5OIFF4M$mjOfF^;sJA?gkY9ShBlTNy6?x zLUL>DiyK$6mdzrw^j4xPbj2oyH781R23{I5BcO8+#Prjs2T8wfR zA3yp%(m-<p7kcM99 z=#oIa;-QQ9daYQF(3yyX$R5V|Np-T^sUn*l_;Jq@X75*@)DB$#Z0zZ$^Qyn0F@Iu2 zVI^_K{~SUW#REQk1|>LOakyq^8oqb+umbN2V*;?Yqv|}+1^HeWD{xOw)Z+kGuVwek z&cEByzMTQ5O02Zc%=#@y*!!vjtDP33bIVJoo5y@PxtDOxbm#~^5nE&2z8Q0XOMFYe zMy<#smYa21{>d?HrS}UU+0{4~YOF&dW?mcCeogdr&bD?kZ>iQ%;IwvC^S%y@Q|fK% zo^Q?cJh@l?@r$Tfva4g*6OnuI>naW#i>fK!tUktGvN0 zbdIA=u?hXGb!d=~XpUtCo?=Ep`5R6&_p5A#yZ;0T*N-5nD#nbaAJ8GP@xh(^fw8;$ zuH&yu85<0~0X-72A=n`4_e3b%A6cIi!}Di6mtAkEmXu@?lW&Bkr2?Z ztQm5?#AJ;xdgvIzdpN{Q!fFPZ9zXOsKkU;yf5~Gp4v}t%4;WSbXU#9ixFon>VA@*} z`M~AFmA$6C%={v6DJ9vux87{zmgi5(+5^+O+V;5%C3l#%R=N;B5PLA7K@N-ni)a$) z0qlvwhTBy?fzEmP4l;T-%C{?tY|ybiC++vAUS_o&ci$lB3XFq(4HU~Kn0XKv2wcy_09!%d-5xkL3qjsia7 z3akqDIg~Eozb6kaGzxgUuYZ`qU=A}T=FNTftHViCONDWAKn5wvHPhYR;so7*dU2wR zG-zOM_RKyZ7)ds%F|%#Unlz7MctL1L%g-@)M>lr{GNkIpd^SG%ahq3Jvi*emDb zPY(~&=uw=p=ioT?2AY6z-~4f$XuaM~LjbV70Kk#tFK#xEiO+|Qp@fM8n<8_+wT>VO zH*-r-Mq>K$~+tQF^HD0lYd~iS zU5jEIhZZ|oGu9%66Q=fdlU;g{!n+7j&wNllVhi3d#+x`&QI@1sCb~IgB8n7|EY?Lh zhAP*Z+tkO`e9ELZ274rr`dA?@A?6n`fIOV6OAEI_v4K^x$CSC`N>j?-3KBo@Zelm% zjlH>0!9(BM+L2bIZ|3|Hq-m1}syTB7g)+kgqlpW%;liZx?jNF!02T~%eg0V(P``}v zt{6a}cfA+nakvvy&1Yzi-%ln}NkDw*FRW+_513vI6g$#osT+C4-K0oF2kgYf23d^5ZxzQ50rMazAV4Ov>t{=`HzJ0dleQ<8>eG!+;HwE-Sygzcvz6<#& zo?Jqu?LC;7-XMc5P1nb3FuYz(&-5JfBuTm>AvqkL{FBJoOe~!gIYbAQF2@Vhiv1Yf9)pkVWJKr@4otPrSkt<4`7Q?pwAN> zfx{8=Z}4@CU#-p(_R0ak0Ixg%7Dx@c+5`>v#Ql`kZZ6K;AtJ;*n^dtx2`_U)QW&Ez zG`Fhwf@aBa&QlK<{rsY;Gv6OOTAT-HAL)|gbP395^r@0q>pP!-kohE-C=BX(;aK+-fY z?fMKT*ot-UtHB z{2mZPQbQBV=}>o)68xFnU~fD_&fy34R7Jd0Qu~v^k9(qP7UE|nTsf9gOlI4$X1@vi z4Dr>2;*7VRPI?rlq6+V6S!`mkxlnJnsO&`L$FR^__4dsY5jRFp<096`l3U{=%aeEN zqU|rwyJac7=JbNB;IvR)0ETuMB?YeOD5;_(q=0@IuqH+t_c*DID+kXEI&WK080pdW zYYpnHdJ2`5`KS6Z)zh6aTaarWgYA&D7L^4!6c}hnivv+_oGuQ<(rt-(u&R$oOxpfsL%B>0u zIPa9)RK4@6NbX&_X>(m#k>Z{5+b2uAzZIDpop^3uub{0WNVpS023h-a;A`|mNWI5W zpJE4jA%(!|3Om1)EX=z2>7%C$CG%4lsw3}7U^~f^_~Cn{h{ByxZe+DhxRIsr#e3t$ z??yehReU^m?T#QerLlJx*G58K{hr!}KM?s+K05g``EvgsIs1yvzyAw`tdj5&&x2=1 zVl*-BU-p}Z;l4ay&398=Ll6mXj`JCw7?bgB=G>F=YrBH>P(h=SMC`y z-Ma#ToMoXeVdl4nrnY9i^E$jcYee!X7^6ffc42y85#at{v)JLBCOZ*=$;$Bl9Xv?GsS z@0fE$c1#Fih3S_=WbQwU$n@tLD442dcQu9@!&?>;;8h zp)Wt~ZU0g0iNd}nh=Tf^aRjLi1!Xs8FN(sEjQ7MxgV1t-YSDvb*SYg%Cd^71gSYHzQJ_*+Wz}v!*`n%Z5@o zgQI5<3@dC7KS%)}ret%XFf!+%Q+J3r2z8%_hD6RP339Y%5U>ovoaRg6j2Un$0R?`tA z!{vi#z^tNyl={RRlA^C7IP^E;Eb44-JE3NX{FX?Nq&pmfjSlY6>0XmV911}~PGxt) zgy>AvUyM-->O#C7B^X;hTe(gk!D5@@@FhU}JlJOP%=ZCBnZY*9knlS2i}7k|ElF66 zl^&gFKX^Qb4B0H9vs52e%MYU><~PB^Dc$gCfxRXmk+Qj00Neu;D;PUk0L9k~R0q5T zl)8}BxN_nUcQ?_3>o<~hH}Q6F_knO%Lan(;d%3MAH1h50o|Thyb;Ic9#Ky*-$KNAC zbEKU;%wE4ghIbvBnz3lSmOi(=_XIHZRn+3Roq@VcIpDw7ARE;1BkvgXfk)vz z_Nia0kDdH{Nqm4Sq1~CXTiR2u_yc9GU|DwT)$-r&B3FIY$5Z~6ldFIV#&-|DdTR}} z%k#K?As{{TvVxMSSEV;XZn$w_)@Y@j!7Yl;ESPcl)ufYS{&7ER@~uowRtM<|MRqWC zYCPR6+vKmljITu{Ut=OZ;J2Zvf8WUqLl8AYQ&}HHiVsK=>F&ptG8LEpyf`<~Px-+; zsZeT^e52}=@$G_MnwE{M*2SWJYZ1}RJImKGZy(`=;v%~&ME-gx_-py{v-7*ZiL1o$ zg@ic86nWkyWB#>^XK%mwplW+N=6Z(ZTBsC6;+xc_=MaVhC?RQJ2d%1}5T@N2^T0y1UE3~Meh&|b6wUrrx{$ErFBbM1 z1tYOKa~_WOWR{wp>@(pv&U8sp==Frd`(KXU)Whc;K`KEJ^$<1u7ySO8C&~X=0{t(a zas1&2lNeLX5*Ve{?H}fa_HG{9>B*PbqwrUe$hFUZW~uUwYk3$(%MoPnoux#71i}av zUWDmQDL8^Senez0fdKa^7MZ;Y5?t8EE)n@hNC!Opa9;v;1To*+VQT&NB>p}Du5AV)>^(2wJQdb+K!~Yiz*ceUREwu5#Crg@-JX+IGZBiD%;+LNY+C(c<{6+{ zrEL9MrA5F@uqDk{x)gE%o=lV+M#&P%$2;=HN9RXSy2L!O8x%%Nk-a}n<8^_@#4XQh zC#?UncK@R7l)b*c(0=IFg5%d-nWsV7dYp9)pQy4i7V0m77^~VbTlvPOh7_4-b1myz z83R(b5@Z?2{-~u>XJ{`!R4)HW<*E94lOw5$eiIIR(Lr_Ro4*u|gTYd|7k)iZyzk{Y zUJ&1LyL-G`{Gy1}m%E2~g2w{xNuTODU&00}Dd@^9bq;)Sz3Aq}3m@4~;%?WIMb&c4 zxE(LmE8a?am>QWhlcYm}1T*_#R-@++xa2d3F zD5;i&1#LSFH{ERXub3HyCj(ei=t(AqKemd|2#-VSpiWW6p-Tfqd@_c;#qfBrl13U; z;A)QikmaXFMCwh&f@Uz~l5^CxWGo5F{y*B=f5BWqlf<-}f;JQ#gPy_fg%Du)T@N6? ztYqF`X5|2uN8raSUZ2FTfyK;UT_vDJsx8d^UqcP8NHnta;zJKi^JFY$(T1{e_%s-E zs5$eUW8nxw7XmvCM3x1oh~k;s9jn)V0D_Dxl;b+`M zOh*EcEtg#k40LLt>tP8xx)coQjOX5OZ%>W*3R|z~o4G{)ggw5>=Q`&@1e05zj+IQ% zb(&!}s%_~vS-*L>UlKQBIbXAlsuZy1N&Ne8YGNt(a4~&pWFo-RZpgr4?KqNY{rt%i z*|?rNdo^`ly5aXWGArHd-%=}MKrrGDC}ls>scAWUt8;n5Mp}uMDgr_n+wj)AkyENW z$m1SbNpTE0&3yNe0OT8t8&RgRAEcsjV2y63F^%}~@#)C-cm;iQmR<)1N|(r`p*?(0 zqO}17+C|irs8b?NlbyKBl*ez?BYUTnQ30htdQUH`I4ZwCg5=*D(kYH5s9aC`RXL!9 z=A#b^x!ptEirE-nIH-wCo5un=99Cb?qplvt`G718n~P_s2R777AHEMh^e2}8y3ANx z^-kUVn;P@wqC@Qjevk*}WwE95Fws5-teMrjGXfCanE6}+#r_EVxdTYMNlR$tJa{_& zD?*IUeW3bUql5$(@wSVP4oPMDWyb&3%s$U~#%8qEbE87kCjFGJ4nnOmSHMA;OWEfq z(9%jgEn>!ZwIIVgofkd)xGBI4sc@knXC%)n*u|)(#LA(xTfay5CsxZ7l^Y425*tcz z5*pnou4%!gbG?~eX7N>j>XR&s3RgO<&2RXVc~Mf^I#=Org{QVG1 zZxPY83YfS;U((%*iQ)U>`6t>3929nGmj(U&N@J36jD z8N6X&?lEdnZ3VmWUu@67oWoN>Vf1%e`;2dQ=Ia>=)JzEGHKyb84av)tuWc{yQ~jgl zPxXWvFQoFm)Ys+wX2ePVP=N1eT(j`cp%3lb-f6rSZv;v0dRX|`dK{A$SXw^(tVDfa6eHjI_lbV?)7K$U0KPho3BpmSUyy$_(eYiV!)t4 z4AU;D!}7lST_?@q7lH5MKyI45XCYmVg6KjdWH>o|VmnjY`dtUEm!=SSwT#E)^!>I^ z(_Px3JbDkJ~Ae4xSZ}Kbf75ifm z;2Q*Tc*74m%syRijy!R@4^r3-g}N5AgSM@Ev6LtDeE~CQ2UtxflYb&xPB;N;3u-lm zD||Xl)^R#)XT^hLJj*gNVzV17ZjuFtrqoue>}_HQ3kU1wuF!0-M- z)lyGKQJnBGBOvTTB1Fx;FD`;wR%3tbG_;OR@d7$U1yCtH#9uJoEEPNI2Bt-=E%O0QWSAAIPD?46P zN-tpy;A`TO@DF{xyJ6KsWEP^5uS>_oKqMuX1oAuNsjHI*?6n1Upa*oT87I5E>J0#Y z;=#@Vz#vE6ws(H-94a{uR|>d>%5OQTv@e{q{d%eXnb$~0&uCFno*>0p>RqPY^?tjL zZY`oWRjFRTrFZ6UyNE+shpeH$Q7oF|jw8+ERlHG;!lO5G}8lz~pLA!+4=E--~ zV_*oEKefmgc&1Hfty+-5lV3a;>W0ToY_Wx_)Rt@COmwCC$CLjW+CvI>SXEi@ypZ&3 zF8T4tH&k<);-6%T;Im?U{VMiF?TOcDLBjs&%Q73IdFi3%mkxAQ)3(G7+QN&kuOt>3 zl0KQu-BYMnGHewv+oshb&X||!OBW{G8&&M<^j2btE)@T#zjNVK`=T@6{`SfX*PQfp z^XuBCdLL#bS2}g`7QP%oGB>d9%XJ`(D4^h?f=CiUH%F9-S+={!->VduobfDqm}O{a z^1z{H)WpV^`$~-Rkof)NDWUZ0<>{fNv6V7C6U|B27Q$|&%OMz!%)df>t_RO!+^?LH zZa>f~D()?z-vg40JQ;8xZtLmfli=*VBgnLs-YIt(&DRCfj)p=d@PWO-ha`sK-Rk

e(j((9mB&3K~ULa}RED<*; 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

XF$#`GI0BOphe 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≫2wI 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%0AWJ!Ew-d@ z9!mar#ziedhP@CQqGV}@mzH12T+%4$-m6KCi_(wGcF$XkublY$W~Y3%wKaaYd*#4; ze844y8~UT|%B%r(Yu&=VzJC)Yg#!hkWKX?u0bE8H3oB1ST(O!PWbh3&q^Qlj&U@fF z)mLTGehb)UUW(X(n37kzrim^ z|AFSDnzfDrOPTV>GxI`>5Zup4=Fdpm24x9=EBo~iG#adCnTZM-zfl){b?5H_zqtV4 zaIx6(+<(1+%T1M`z2P6d$X}i8`~&HI9#N4b-2#_A(gDtk+<~HU;9MFki$QmA0KKM1 zd>!JjNUjM`0m=8VF=7Bn+@U0VpS2Qvf`;CP>)IO`cuA~56S&~mXn1nxRT~EKP>%Z#)T0jE`diGGMxEj2 zW!Ne3N1oq&<2X*Ufz+3eIM9Vw|JScPer51Y5Rm+V)2pag`~wxjFS}3qNLA=0 zNj_o8wYhs+GHV?XB0+Ao&=a&1=D^ti{~u@r!f{(OH1iMCJvn?^Gy07Oa11_gI~+Aw z#fNrz?Ygsk7o-a*sVLhEk( z@2xhwZ(^?iS)^C?mx(u1(nZw4Kzbv=;FzTk03fc9wk-kvfvyPv&_lc}=cB7LgYN5T#a9cYJCMjE$^5VHif4J!gOSop7r8O#8Nb51v#mF%I8&?o+d!(!B&#yX({vmtN!AZ`&Z}xO@5! zBwoOA=K*ggJVngHd$3R9rB}m=C~!ehBnPm;VNiINywW=Dpy)$4@O9uxHnWaZFJB!S+-yOU%lQ&9P{P|k@f;CS@fVWp z=J#Jqbu!VGIn?d-st7apy63 zPTG5wixHhZ#>7uqWu9ycjA${gMFNk%<3?lHSXd-yDfu4=?BET&erG)~&=IXS1@P_# z1LfngTK%@jb5i*)EOt)Q25!fEfA_pGZBtFw0iv+3T!8ZT`r|xzB|A?H+Uq6A#)|101F=&kJ$n@)#>r^)utmLxV%gYvEl<1#q%tjGit|HAv^3K+LF6`5*#&v-E6wVCK64C(6J^c`Flcd@dE+9Il98dm=*P7S`D&GfTVI6(BC4rtkT+0n>Q3w zw0)KE?wOm&T^-N1J5K;VCiz7cXlvs=Xuj>a)GVDxd=N zJX0Wk9rURF2m0wre1&U@0bfdLLQyzCTgp{&0DZBM1(@%&#e!}$e|Dw{gYW#&;O=X@ zGp};A`OflG3q3HiM)~9dO+lw`?}914r@WaiS2pp8T}(5uVmgp?qcLK1P=Z*tbPA#i zq*Ypqfi-|O3&Er?yp-fgViEMG_cM0J6TM$}N{8ub6;5K(x z8aSYUE-3qkPZSM?8SVIlD?_BG{DOepg+cZmH|lM`fjQJ|guCxwlq>%ohXoIoL&Hc;w3WvZ z(B*hrzWE8zMn6PcY?aJh%jh8ys<9>O2G!S@ejcM4?q z44nRteX&2c+n=reME1YCPyV@WI8x6S*Bbm|qJ8`RC#J>!e%D8R^Y;Jo<1#QNpJ*Qg zZMj!mJ^%adU)MK9)gM1L9~^>isUK_hJLlM)|MjYDOQ37bLeRxw3@{u7jERu?d;glY z=I*~Hzce-CKf@~f_w|lZ+wQ;SzqEDb$BlbWeSIkP{ZBh^y!7?P_2uh1uJ345{=)ce-QT1#4LFsclupI9ODi8k|zBv4m z`&RddCZ_UVfyrdw{%c#FzPSHE{%Pc_{$Id!bU*%eRMD6GAN-%zMdT&xPL%$8M z$KTBOcgrvTn&tjFs?ety}nivg!YR|L3*(Vf#P!CeuS?!~?UjD{H`6+N#d(vW{|wH5Rs!1rucyEEiGNW) z)$ab^qQ6;jXVxv}mH*SKZ~uDvk8A9G^^bvRUAxZyCs$nkb^niR_+@~( { modelEngineParams, selectedModel ) - return componentDataEngineSetting.filter((x) => x.key !== 'prompt_template') + return componentDataEngineSetting.filter( + (x) => x.key !== 'prompt_template' && x.key !== 'embedding' + ) }, [activeModelParams, selectedModel]) const promptTemplateSettings = useMemo(() => { diff --git a/web/screens/ExploreModels/ExploreModelItem/index.tsx b/web/screens/ExploreModels/ExploreModelItem/index.tsx index e8887e70f..516fec5a2 100644 --- a/web/screens/ExploreModels/ExploreModelItem/index.tsx +++ b/web/screens/ExploreModels/ExploreModelItem/index.tsx @@ -57,10 +57,10 @@ const ExploreModelItem: React.FC = ({ model }) => { Tags -

    - {model.metadata.tags.map((tag, i) => ( +
    + {model.metadata.tags.map((tag: string) => ( { - // This component only loads when repoData is not null - const repoData = useAtomValue(repoDataAtom)! - // This component only loads when conversionStatus is not null - const conversionStatus = useAtomValue(conversionStatusAtom)! - - return ( - <> -
    -

    Hugging Face Converter

    -
    -
    -

    - An error occurred while {conversionStatus} model {repoData.id}. -

    -

    Please close this modal and try again.

    -
    - - ) -} diff --git a/web/screens/ExploreModels/HuggingFaceConvertingModal/index.tsx b/web/screens/ExploreModels/HuggingFaceConvertingModal/index.tsx deleted file mode 100644 index 175722dda..000000000 --- a/web/screens/ExploreModels/HuggingFaceConvertingModal/index.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import { useEffect, useState } from 'react' - -import { Button } from '@janhq/uikit' -import { useAtomValue } from 'jotai' - -import { useConvertHuggingFaceModel } from '@/hooks/useConvertHuggingFaceModel' - -import { - conversionStatusAtom, - repoDataAtom, -} from '@/helpers/atoms/HFConverter.atom' - -export const HuggingFaceConvertingModal = () => { - // This component only loads when repoData is not null - const repoData = useAtomValue(repoDataAtom)! - // This component only loads when conversionStatus is not null - const conversionStatus = useAtomValue(conversionStatusAtom)! - const [status, setStatus] = useState('') - const { cancelConvertHuggingFaceModel } = useConvertHuggingFaceModel() - - useEffect(() => { - switch (conversionStatus) { - case 'downloading': - setStatus('Downloading files...') - break - case 'converting': - setStatus('Converting...') - break - case 'quantizing': - setStatus('Quantizing...') - break - case 'stopping': - setStatus('Stopping...') - break - case 'generating': - setStatus('Generating metadata...') - break - } - }, [conversionStatus]) - - const onStopClick = () => { - cancelConvertHuggingFaceModel(repoData.id, repoData) - } - - return ( - <> -
    -

    Hugging Face Converter

    -
    - {conversionStatus === 'done' ? ( -
    -

    Done!

    -

    Now you can use the model on Jan as usual. Have fun!

    -
    - ) : ( - <> -
    -

    {status}

    -
    - - - )} - - ) -} diff --git a/web/screens/ExploreModels/HuggingFaceModal/index.tsx b/web/screens/ExploreModels/HuggingFaceModal/index.tsx deleted file mode 100644 index 9051e15e6..000000000 --- a/web/screens/ExploreModels/HuggingFaceModal/index.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import { CommandModal, Modal, ModalContent } from '@janhq/uikit' -import { useAtomValue, useSetAtom } from 'jotai' - -import { HuggingFaceConvertingErrorModal } from '../HuggingFaceConvertingErrorModal' -import { HuggingFaceConvertingModal } from '../HuggingFaceConvertingModal' -import { HuggingFaceRepoDataLoadedModal } from '../HuggingFaceRepoDataLoadedModal' -import { HuggingFaceSearchErrorModal } from '../HuggingFaceSearchErrorModal' -import { HuggingFaceSearchModal } from '../HuggingFaceSearchModal' - -import { - repoDataAtom, - fetchErrorAtom, - resetAtom, - conversionStatusAtom, - conversionErrorAtom, -} from '@/helpers/atoms/HFConverter.atom' - -const HuggingFaceModal = ({ - ...props -}: Omit[0], 'children'>) => { - const repoData = useAtomValue(repoDataAtom) - const fetchError = useAtomValue(fetchErrorAtom) - const conversionStatus = useAtomValue(conversionStatusAtom) - const conversionError = useAtomValue(conversionErrorAtom) - const setReset = useSetAtom(resetAtom) - - return ( - { - if (open === false) { - if ( - !repoData || - ['done', 'stopping'].includes(conversionStatus ?? '') || - conversionError - ) { - setReset() - } - } - if (props.onOpenChange) { - props.onOpenChange(open) - } - }} - > - -
    -
    - {repoData ? ( - conversionStatus ? ( - conversionError ? ( - - ) : ( - - ) - ) : ( - - ) - ) : fetchError ? ( - - ) : ( - - )} -
    -
    -
    -
    - ) -} - -export { HuggingFaceModal } diff --git a/web/screens/ExploreModels/HuggingFaceRepoDataLoadedModal/index.tsx b/web/screens/ExploreModels/HuggingFaceRepoDataLoadedModal/index.tsx deleted file mode 100644 index 32284ede5..000000000 --- a/web/screens/ExploreModels/HuggingFaceRepoDataLoadedModal/index.tsx +++ /dev/null @@ -1,100 +0,0 @@ -import { useState } from 'react' - -import { Quantization } from '@janhq/core' -import { - Button, - Select, - SelectContent, - SelectGroup, - SelectItem, - SelectPortal, - SelectTrigger, - SelectValue, -} from '@janhq/uikit' -import { useAtomValue } from 'jotai' - -import { twMerge } from 'tailwind-merge' - -import { useConvertHuggingFaceModel } from '@/hooks/useConvertHuggingFaceModel' - -import { - loadingAtom, - repoDataAtom, - unsupportedAtom, -} from '@/helpers/atoms/HFConverter.atom' - -export const HuggingFaceRepoDataLoadedModal = () => { - const loading = useAtomValue(loadingAtom) - // This component only loads when repoData is not null - const repoData = useAtomValue(repoDataAtom)! - const unsupported = useAtomValue(unsupportedAtom) - const [quantization, setQuantization] = useState( - Quantization.Q4_K_M - ) - const { convertHuggingFaceModel } = useConvertHuggingFaceModel() - - const onValueSelected = (value: Quantization) => { - setQuantization(value) - } - const onConvertClick = () => { - convertHuggingFaceModel(repoData.id, repoData, quantization) - } - - return ( - <> -
    -

    Hugging Face Converter

    -

    Found the repository!

    -
    -
    -

    {repoData.id}

    -

    - {unsupported - ? '❌ This model is not supported!' - : '✅ This model is supported!'} -

    - {repoData.tags?.includes('gguf') ? ( -

    ...But you can import it manually!

    - ) : null} -
    - - - - ) -} diff --git a/web/screens/ExploreModels/HuggingFaceSearchErrorModal/index.tsx b/web/screens/ExploreModels/HuggingFaceSearchErrorModal/index.tsx deleted file mode 100644 index 4cb58332b..000000000 --- a/web/screens/ExploreModels/HuggingFaceSearchErrorModal/index.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import { Button } from '@janhq/uikit' -import { useAtomValue } from 'jotai' - -import { useGetHFRepoData } from '@/hooks/useGetHFRepoData' - -import { fetchErrorAtom, loadingAtom } from '@/helpers/atoms/HFConverter.atom' - -export const HuggingFaceSearchErrorModal = () => { - // This component only loads when fetchError is not null - const fetchError = useAtomValue(fetchErrorAtom)! - const loading = useAtomValue(loadingAtom) - - const getRepoData = useGetHFRepoData() - - return ( - <> -
    -

    Error!

    -

    Fetch error

    -
    -

    {fetchError.message}

    - - - ) -} diff --git a/web/screens/ExploreModels/HuggingFaceSearchModal/index.tsx b/web/screens/ExploreModels/HuggingFaceSearchModal/index.tsx deleted file mode 100644 index 3add92ed1..000000000 --- a/web/screens/ExploreModels/HuggingFaceSearchModal/index.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { Button, Input } from '@janhq/uikit' -import { useSetAtom, useAtomValue } from 'jotai' - -import { useGetHFRepoData } from '@/hooks/useGetHFRepoData' - -import { repoIDAtom, loadingAtom } from '@/helpers/atoms/HFConverter.atom' - -export const HuggingFaceSearchModal = () => { - const setRepoID = useSetAtom(repoIDAtom) - const loading = useAtomValue(loadingAtom) - - const getRepoData = useGetHFRepoData() - - const onKeyDown = (e: React.KeyboardEvent) => { - if (e.key === 'Enter') { - e.preventDefault() - getRepoData() - } - } - - return ( - <> -
    -

    Hugging Face Converter

    -

    Type the repository id below

    -
    - { - setRepoID(e.target.value) - }} - onKeyDown={onKeyDown} - /> - - - ) -} diff --git a/web/screens/ExploreModels/index.tsx b/web/screens/ExploreModels/index.tsx index 484e62b0e..f2e19661e 100644 --- a/web/screens/ExploreModels/index.tsx +++ b/web/screens/ExploreModels/index.tsx @@ -1,7 +1,6 @@ import { useCallback, useState } from 'react' import { - Input, ScrollArea, Select, SelectTrigger, @@ -13,12 +12,13 @@ import { } from '@janhq/uikit' import { useAtomValue, useSetAtom } from 'jotai' -import { UploadIcon, SearchIcon } from 'lucide-react' +import { UploadIcon } from 'lucide-react' import { setImportModelStageAtom } from '@/hooks/useImportModel' +import ModelSearch from '../Settings/Models/ModelSearch' + import ExploreModelList from './ExploreModelList' -import { HuggingFaceModal } from './HuggingFaceModal' import { configuredModelsAtom, @@ -33,7 +33,6 @@ const ExploreModelsScreen = () => { const [searchValue, setsearchValue] = useState('') const [sortSelected, setSortSelected] = useState('All Models') - const [showHuggingFaceModal, setShowHuggingFaceModal] = useState(false) const setImportModelStage = useSetAtom(setImportModelStageAtom) const filteredModels = configuredModels.filter((x) => { @@ -56,6 +55,10 @@ const ExploreModelsScreen = () => { setImportModelStage('SELECTING_MODEL') }, [setImportModelStage]) + const onSearchUpdate = useCallback((input: string) => { + setsearchValue(input) + }, []) + return (
    { >
    -
    { alt="Hub Banner" className="w-full object-cover" /> -
    +
    -
    - - setsearchValue(e.target.value)} - /> -
    +
    - {/* {experimentalFeature && ( -
    -

    - Convert from Hugging Face -

    -
    - )} */}
    - {/* Temporary hide tabs */} - {/*
    -
    setTabActive('Model')} - > - - Model -
    - - -
    setTabActive('Assistant')} - > - - Assistant -
    -
    - - Coming Soon - - -
    -
    */} - +
    + {loading && ( + + )} +
    + ) +} + +export default ModelSearch diff --git a/web/screens/Settings/Models/index.tsx b/web/screens/Settings/Models/index.tsx index 9f4ff5802..6ac2ea782 100644 --- a/web/screens/Settings/Models/index.tsx +++ b/web/screens/Settings/Models/index.tsx @@ -1,17 +1,18 @@ -import { useCallback, useState } from 'react' +import { useCallback, useMemo, useState } from 'react' import { useDropzone } from 'react-dropzone' -import { Button, Input, ScrollArea } from '@janhq/uikit' +import { Button, ScrollArea } from '@janhq/uikit' import { useAtomValue, useSetAtom } from 'jotai' -import { Plus, SearchIcon, UploadCloudIcon } from 'lucide-react' +import { Plus, UploadCloudIcon } from 'lucide-react' import { twMerge } from 'tailwind-merge' import useDropModelBinaries from '@/hooks/useDropModelBinaries' import { setImportModelStageAtom } from '@/hooks/useImportModel' +import ModelSearch from './ModelSearch' import RowModel from './Row' import { downloadedModelsAtom } from '@/helpers/atoms/Model.atom' @@ -21,12 +22,18 @@ const Column = ['Name', 'Model ID', 'Size', 'Version', 'Status', ''] const Models: React.FC = () => { const downloadedModels = useAtomValue(downloadedModelsAtom) const setImportModelStage = useSetAtom(setImportModelStageAtom) - const [searchValue, setsearchValue] = useState('') const { onDropModels } = useDropModelBinaries() + const [searchText, setSearchText] = useState('') - const filteredDownloadedModels = downloadedModels - .filter((x) => x.name?.toLowerCase().includes(searchValue.toLowerCase())) - .sort((a, b) => a.name.localeCompare(b.name)) + const filteredDownloadedModels = useMemo( + () => + downloadedModels + .filter((e) => + e.name.toLowerCase().includes(searchText.toLowerCase().trim()) + ) + .sort((a, b) => a.name.localeCompare(b.name)), + [downloadedModels, searchText] + ) const { getRootProps, isDragActive } = useDropzone({ noClick: true, @@ -38,6 +45,10 @@ const Models: React.FC = () => { setImportModelStage('SELECTING_MODEL') }, [setImportModelStage]) + const onSearchChange = useCallback((input: string) => { + setSearchText(input) + }, []) + return ( {isDragActive && ( @@ -61,20 +72,7 @@ const Models: React.FC = () => { )}
    -
    - - { - setsearchValue(e.target.value) - }} - /> -
    - +

    ?h+o;PGQqNR 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 ou^YhW$*oQ!d}4WFFqTeAK&hDf`$0IvT}*t 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