diff --git "a/frameworks/llama_index/0.14.15/0.14.15\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" "b/frameworks/llama_index/0.14.15/0.14.15\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" new file mode 100644 index 0000000000000000000000000000000000000000..12a3c0b943e5e604e012ee8e7729de703174ce99 Binary files /dev/null and "b/frameworks/llama_index/0.14.15/0.14.15\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" differ diff --git a/frameworks/llama_index/0.14.15/Dockerfile b/frameworks/llama_index/0.14.15/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..23b8e8434081f280f36072b877135edfe6038fda --- /dev/null +++ b/frameworks/llama_index/0.14.15/Dockerfile @@ -0,0 +1,19 @@ +FROM opencloudos/opencloudos9-minimal:latest + +LABEL maintainer="pangxb666" +LABEL org.opencontainers.image.source="https://gitee.com/OpenCloudOS/ai-agent-container" +LABEL org.opencontainers.image.description="LlamaIndex 0.14.15 on OpenCloudOS 9" + +RUN dnf install -y \ + python3.11 \ + python3.11-pip \ + && dnf clean all \ + && rm -rf /var/cache/yum/* + +RUN pip3.11 install --no-cache-dir llama-index==0.14.15 llama-index-core==0.14.15 \ + -i https://pypi.tuna.tsinghua.edu.cn/simple \ + --trusted-host pypi.tuna.tsinghua.edu.cn + +RUN echo $(date +"%Y-%m-%dT%H:%M:%S%z") > /opencloudos_build_date.txt + +CMD ["python3.11"] diff --git a/frameworks/llama_index/0.14.15/README.md b/frameworks/llama_index/0.14.15/README.md new file mode 100644 index 0000000000000000000000000000000000000000..2d99e2d39e34f6865ddc182165293aee97da6e8b --- /dev/null +++ b/frameworks/llama_index/0.14.15/README.md @@ -0,0 +1,33 @@ +# LlamaIndex 0.14.15 on OpenCloudOS 9 + +## 基本信息 + +- **框架版本**:0.14.15 +- **基础镜像**:opencloudos/opencloudos9-minimal:latest +- **Python 版本**:3.11 +- **CUDA 版本**:N/A +- **开源地址**:https://github.com/run-llama/llama_index + +## 简介 + +LlamaIndex 是一个面向 LLM 应用的数据框架,提供数据摄取、索引和查询等核心能力,帮助开发者快速构建基于私有数据的 RAG(检索增强生成)应用。 + +## 构建 + +```bash +docker build -t oc9-llama_index:0.14.15 . +``` + +## 使用示例 + +```bash +# 验证版本 +docker run --rm oc9-llama_index:0.14.15 python3.11 -c "import importlib.metadata; print(importlib.metadata.version('llama-index-core'))" + +# 运行基础测试 +docker run --rm oc9-llama_index:0.14.15 bash /test.sh +``` + +## 已知问题 + +无 diff --git a/frameworks/llama_index/0.14.15/build.conf b/frameworks/llama_index/0.14.15/build.conf new file mode 100644 index 0000000000000000000000000000000000000000..760a744bec6101137face13d81fe7843568bc6e4 --- /dev/null +++ b/frameworks/llama_index/0.14.15/build.conf @@ -0,0 +1,4 @@ +# llama_index 0.14.15 on OpenCloudOS 9 +IMAGE_NAME=oc9-llama-index +IMAGE_TAG=0.14.15 +GPU_TEST=false diff --git a/frameworks/llama_index/0.14.15/test.sh b/frameworks/llama_index/0.14.15/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..cc0bb45bf4ae1db21f713aad9aaa0c56abaf46f7 --- /dev/null +++ b/frameworks/llama_index/0.14.15/test.sh @@ -0,0 +1,45 @@ +#!/bin/bash +set -e + +IMAGE="${1:?ERROR: 缺少镜像参数。用法: bash test.sh }" + +echo "=== LlamaIndex 0.14.15 基础功能测试 ===" + +# 1. 验证版本 +echo -n "检查 llama-index-core 版本... " +sudo docker run --rm "$IMAGE" python3.11 -c " +import importlib.metadata +version = importlib.metadata.version('llama-index-core') +print(version) +assert version == '0.14.15', f'期望 0.14.15,实际 {version}' +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 2. 验证核心模块导入 +echo -n "检查 llama_index.core 导入... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import VectorStoreIndex, Document, Settings +print('核心模块导入正常') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 3. 验证 Document 创建 +echo -n "检查 Document 创建... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import Document +doc = Document(text='OpenCloudOS 9 LlamaIndex 测试文档') +assert doc.text == 'OpenCloudOS 9 LlamaIndex 测试文档' +print('Document 创建成功') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 4. 验证 Node 解析器 +echo -n "检查 SentenceSplitter... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core.node_parser import SentenceSplitter +from llama_index.core import Document +splitter = SentenceSplitter(chunk_size=512, chunk_overlap=20) +doc = Document(text='LlamaIndex 是一个面向 LLM 应用的数据框架,提供数据摄取、索引和查询等核心能力。') +nodes = splitter.get_nodes_from_documents([doc]) +assert len(nodes) > 0 +print(f'节点数量: {len(nodes)}') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +echo "=== 所有测试通过 ===" diff --git a/frameworks/llama_index/0.14.16/.DS_Store b/frameworks/llama_index/0.14.16/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 Binary files /dev/null and b/frameworks/llama_index/0.14.16/.DS_Store differ diff --git "a/frameworks/llama_index/0.14.16/0.14.16\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" "b/frameworks/llama_index/0.14.16/0.14.16\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" new file mode 100644 index 0000000000000000000000000000000000000000..640c46ddd9e16afd6a2b2f0fef2709ba90848bf6 Binary files /dev/null and "b/frameworks/llama_index/0.14.16/0.14.16\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" differ diff --git a/frameworks/llama_index/0.14.16/Dockerfile b/frameworks/llama_index/0.14.16/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..3b0b5c3f2cf849ec26cef0885643bc159e9d93e0 --- /dev/null +++ b/frameworks/llama_index/0.14.16/Dockerfile @@ -0,0 +1,25 @@ +# 基础镜像:OpenCloudOS 9 极简版,适用于纯 Python / CPU 框架 +FROM opencloudos/opencloudos9-minimal:latest + +# 镜像元信息 +LABEL maintainer="pangxb666" +LABEL org.opencontainers.image.source="https://gitee.com/OpenCloudOS/ai-agent-container" +LABEL org.opencontainers.image.description="LlamaIndex 0.14.16 on OpenCloudOS 9" + +# 安装 Python 3.11 及 pip,安装完成后清理缓存以减小镜像体积 +RUN dnf install -y \ + python3.11 \ + python3.11-pip \ + && dnf clean all \ + && rm -rf /var/cache/yum/* + +# 使用清华镜像源安装 LlamaIndex,加速国内网络下的依赖下载 +RUN pip3.11 install --no-cache-dir llama-index==0.14.16 llama-index-core==0.14.16 \ + -i https://pypi.tuna.tsinghua.edu.cn/simple \ + --trusted-host pypi.tuna.tsinghua.edu.cn + +# 记录镜像构建时间,便于追溯 +RUN echo $(date +"%Y-%m-%dT%H:%M:%S%z") > /opencloudos_build_date.txt + +# 默认进入 Python 3.11 交互环境 +CMD ["python3.11"] diff --git a/frameworks/llama_index/0.14.16/README.md b/frameworks/llama_index/0.14.16/README.md new file mode 100644 index 0000000000000000000000000000000000000000..2730db9dd80c5dc779c064fd4b6bd7821c3bb0c2 --- /dev/null +++ b/frameworks/llama_index/0.14.16/README.md @@ -0,0 +1,33 @@ +# LlamaIndex 0.14.16 on OpenCloudOS 9 + +## 基本信息 + +- **框架版本**:0.14.16 +- **基础镜像**:opencloudos/opencloudos9-minimal:latest +- **Python 版本**:3.11 +- **CUDA 版本**:N/A +- **开源地址**:https://github.com/run-llama/llama_index + +## 简介 + +LlamaIndex 是一个用于构建 LLM 驱动应用的数据框架,提供数据摄取、索引、查询等核心能力,支持 RAG(检索增强生成)等场景。 + +## 构建 + +```bash +docker build -t oc9-llama_index:0.14.16 . +``` + +## 使用示例 + +```bash +# 验证版本 +docker run --rm oc9-llama_index:0.14.16 python3.11 -c "import importlib.metadata; print(importlib.metadata.version('llama-index'))" + +# 运行基础测试 +docker run --rm oc9-llama_index:0.14.16 bash /test.sh +``` + +## 已知问题 + +无 diff --git a/frameworks/llama_index/0.14.16/build.conf b/frameworks/llama_index/0.14.16/build.conf new file mode 100644 index 0000000000000000000000000000000000000000..4cd74afdc9d7c6ccd3198e9389e7fc8c9b398111 --- /dev/null +++ b/frameworks/llama_index/0.14.16/build.conf @@ -0,0 +1,4 @@ +# llama_index 0.14.16 on OpenCloudOS 9 +IMAGE_NAME=oc9-llama-index +IMAGE_TAG=0.14.16 +GPU_TEST=false diff --git a/frameworks/llama_index/0.14.16/test.sh b/frameworks/llama_index/0.14.16/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..adabffcfc549674d3f50ded34f6693e7a0ad09a1 --- /dev/null +++ b/frameworks/llama_index/0.14.16/test.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -e + +IMAGE="${1:?ERROR: 缺少镜像参数。用法: bash test.sh }" + +echo "=== LlamaIndex 0.14.16 基础功能测试 ===" + +# 1. 验证 llama-index 可正常导入并检查版本 +echo -n "检查 import llama_index... " +sudo docker run --rm "$IMAGE" python3.11 -c " +import importlib.metadata +print(importlib.metadata.version('llama-index-core')) +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 2. 验证 Document 核心对象创建 +echo -n "检查 Document 对象创建... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import Document + +doc = Document(text='LlamaIndex 是一个用于 LLM 应用的数据框架') +assert doc.text == 'LlamaIndex 是一个用于 LLM 应用的数据框架' +assert doc.doc_id is not None +print(f'Document 创建成功,id={doc.doc_id[:8]}...') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 3. 验证 SentenceSplitter 文本分割 +echo -n "检查 SentenceSplitter 文本分割... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core.node_parser import SentenceSplitter +from llama_index.core import Document + +splitter = SentenceSplitter(chunk_size=100, chunk_overlap=10) +doc = Document(text='This is a test sentence. ' * 20) +nodes = splitter.get_nodes_from_documents([doc]) +assert len(nodes) > 0, '文本分割应产生至少一个节点' +print(f'分割产生 {len(nodes)} 个节点') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +echo "=== 所有测试通过 ===" diff --git "a/frameworks/llama_index/0.14.18/0.14.18\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" "b/frameworks/llama_index/0.14.18/0.14.18\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" new file mode 100644 index 0000000000000000000000000000000000000000..67425a5e30e64d37ccf4d0298861ac57ec5c1c19 Binary files /dev/null and "b/frameworks/llama_index/0.14.18/0.14.18\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" differ diff --git a/frameworks/llama_index/0.14.18/Dockerfile b/frameworks/llama_index/0.14.18/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..1f068cc16885d8384ad57388914c70b29349fac5 --- /dev/null +++ b/frameworks/llama_index/0.14.18/Dockerfile @@ -0,0 +1,25 @@ +# 基础镜像:OpenCloudOS 9 极简版,适用于纯 Python / CPU 框架 +FROM opencloudos/opencloudos9-minimal:latest + +# 镜像元信息 +LABEL maintainer="pangxb666" +LABEL org.opencontainers.image.source="https://gitee.com/OpenCloudOS/ai-agent-container" +LABEL org.opencontainers.image.description="LlamaIndex 0.14.18 on OpenCloudOS 9" + +# 安装 Python 3.11 及 pip,安装完成后清理缓存以减小镜像体积 +RUN dnf install -y \ + python3.11 \ + python3.11-pip \ + && dnf clean all \ + && rm -rf /var/cache/yum/* + +# 使用清华镜像源安装 LlamaIndex,加速国内网络下的依赖下载 +RUN pip3.11 install --no-cache-dir llama-index==0.14.18 llama-index-core==0.14.18 \ + -i https://pypi.tuna.tsinghua.edu.cn/simple \ + --trusted-host pypi.tuna.tsinghua.edu.cn + +# 记录镜像构建时间,便于追溯 +RUN echo $(date +"%Y-%m-%dT%H:%M:%S%z") > /opencloudos_build_date.txt + +# 默认进入 Python 3.11 交互环境 +CMD ["python3.11"] diff --git a/frameworks/llama_index/0.14.18/README.md b/frameworks/llama_index/0.14.18/README.md new file mode 100644 index 0000000000000000000000000000000000000000..1d65d051db5cf8434168d87a350332ec6f7b11e0 --- /dev/null +++ b/frameworks/llama_index/0.14.18/README.md @@ -0,0 +1,33 @@ +# LlamaIndex 0.14.18 on OpenCloudOS 9 + +## 基本信息 + +- **框架版本**:0.14.18 +- **基础镜像**:opencloudos/opencloudos9-minimal:latest +- **Python 版本**:3.11 +- **CUDA 版本**:N/A +- **开源地址**:https://github.com/run-llama/llama_index + +## 简介 + +LlamaIndex 是一个用于构建 LLM 驱动应用的数据框架,提供数据摄取、索引、查询等核心能力,支持 RAG(检索增强生成)等场景。 + +## 构建 + +```bash +docker build -t oc9-llama_index:0.14.18 . +``` + +## 使用示例 + +```bash +# 验证版本 +docker run --rm oc9-llama_index:0.14.18 python3.11 -c "import importlib.metadata; print(importlib.metadata.version('llama-index'))" + +# 运行基础测试 +docker run --rm oc9-llama_index:0.14.18 bash /test.sh +``` + +## 已知问题 + +无 diff --git a/frameworks/llama_index/0.14.18/build.conf b/frameworks/llama_index/0.14.18/build.conf new file mode 100644 index 0000000000000000000000000000000000000000..6110ae35adac97801ecaf7885c2f389a0bba8794 --- /dev/null +++ b/frameworks/llama_index/0.14.18/build.conf @@ -0,0 +1,4 @@ +# llama_index 0.14.18 on OpenCloudOS 9 +IMAGE_NAME=oc9-llama-index +IMAGE_TAG=0.14.18 +GPU_TEST=false diff --git a/frameworks/llama_index/0.14.18/test.sh b/frameworks/llama_index/0.14.18/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..1270c95c3bf2ecc0f1792af269e001b44602d21a --- /dev/null +++ b/frameworks/llama_index/0.14.18/test.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -e + +IMAGE="${1:?ERROR: 缺少镜像参数。用法: bash test.sh }" + +echo "=== LlamaIndex 0.14.18 基础功能测试 ===" + +# 1. 验证 llama-index 可正常导入并检查版本 +echo -n "检查 import llama_index... " +sudo docker run --rm "$IMAGE" python3.11 -c " +import importlib.metadata +print(importlib.metadata.version('llama-index-core')) +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 2. 验证 Document 核心对象创建 +echo -n "检查 Document 对象创建... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import Document + +doc = Document(text='LlamaIndex 是一个用于 LLM 应用的数据框架') +assert doc.text == 'LlamaIndex 是一个用于 LLM 应用的数据框架' +assert doc.doc_id is not None +print(f'Document 创建成功,id={doc.doc_id[:8]}...') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 3. 验证 SentenceSplitter 文本分割 +echo -n "检查 SentenceSplitter 文本分割... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core.node_parser import SentenceSplitter +from llama_index.core import Document + +splitter = SentenceSplitter(chunk_size=100, chunk_overlap=10) +doc = Document(text='This is a test sentence. ' * 20) +nodes = splitter.get_nodes_from_documents([doc]) +assert len(nodes) > 0, '文本分割应产生至少一个节点' +print(f'分割产生 {len(nodes)} 个节点') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +echo "=== 所有测试通过 ===" diff --git "a/frameworks/llama_index/0.14.19/0.14.19\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" "b/frameworks/llama_index/0.14.19/0.14.19\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" new file mode 100644 index 0000000000000000000000000000000000000000..dbb774a7ae3776f50b665ba49950246ed8e1b2b2 Binary files /dev/null and "b/frameworks/llama_index/0.14.19/0.14.19\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" differ diff --git a/frameworks/llama_index/0.14.19/Dockerfile b/frameworks/llama_index/0.14.19/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..0ca2c99267589a5d3cfa276a3936c9f2ffcb10c4 --- /dev/null +++ b/frameworks/llama_index/0.14.19/Dockerfile @@ -0,0 +1,25 @@ +# 基础镜像:OpenCloudOS 9 极简版,适用于纯 Python / CPU 框架 +FROM opencloudos/opencloudos9-minimal:latest + +# 镜像元信息 +LABEL maintainer="pangxb666" +LABEL org.opencontainers.image.source="https://gitee.com/OpenCloudOS/ai-agent-container" +LABEL org.opencontainers.image.description="LlamaIndex 0.14.19 on OpenCloudOS 9" + +# 安装 Python 3.11 及 pip,安装完成后清理缓存以减小镜像体积 +RUN dnf install -y \ + python3.11 \ + python3.11-pip \ + && dnf clean all \ + && rm -rf /var/cache/yum/* + +# 使用清华镜像源安装 LlamaIndex,加速国内网络下的依赖下载 +RUN pip3.11 install --no-cache-dir llama-index==0.14.19 llama-index-core==0.14.19 \ + -i https://pypi.tuna.tsinghua.edu.cn/simple \ + --trusted-host pypi.tuna.tsinghua.edu.cn + +# 记录镜像构建时间,便于追溯 +RUN echo $(date +"%Y-%m-%dT%H:%M:%S%z") > /opencloudos_build_date.txt + +# 默认进入 Python 3.11 交互环境 +CMD ["python3.11"] diff --git a/frameworks/llama_index/0.14.19/README.md b/frameworks/llama_index/0.14.19/README.md new file mode 100644 index 0000000000000000000000000000000000000000..7ff1615aa1beafb139d364c48d833cc831095819 --- /dev/null +++ b/frameworks/llama_index/0.14.19/README.md @@ -0,0 +1,33 @@ +# LlamaIndex 0.14.19 on OpenCloudOS 9 + +## 基本信息 + +- **框架版本**:0.14.19 +- **基础镜像**:opencloudos/opencloudos9-minimal:latest +- **Python 版本**:3.11 +- **CUDA 版本**:N/A +- **开源地址**:https://github.com/run-llama/llama_index + +## 简介 + +LlamaIndex 是一个用于构建 LLM 驱动应用的数据框架,提供数据摄取、索引、查询等核心能力,支持 RAG(检索增强生成)等场景。 + +## 构建 + +```bash +docker build -t oc9-llama_index:0.14.19 . +``` + +## 使用示例 + +```bash +# 验证版本 +docker run --rm oc9-llama_index:0.14.19 python3.11 -c "import importlib.metadata; print(importlib.metadata.version('llama-index'))" + +# 运行基础测试 +docker run --rm oc9-llama_index:0.14.19 bash /test.sh +``` + +## 已知问题 + +无 diff --git a/frameworks/llama_index/0.14.19/build.conf b/frameworks/llama_index/0.14.19/build.conf new file mode 100644 index 0000000000000000000000000000000000000000..6968592d9969657f2137b7662d947e4e8711b907 --- /dev/null +++ b/frameworks/llama_index/0.14.19/build.conf @@ -0,0 +1,4 @@ +# llama_index 0.14.19 on OpenCloudOS 9 +IMAGE_NAME=oc9-llama-index +IMAGE_TAG=0.14.19 +GPU_TEST=false diff --git a/frameworks/llama_index/0.14.19/test.sh b/frameworks/llama_index/0.14.19/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..56b8bc241cba560667b696861dce0efab2ad28cb --- /dev/null +++ b/frameworks/llama_index/0.14.19/test.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -e + +IMAGE="${1:?ERROR: 缺少镜像参数。用法: bash test.sh }" + +echo "=== LlamaIndex 0.14.19 基础功能测试 ===" + +# 1. 验证 llama-index 可正常导入并检查版本 +echo -n "检查 import llama_index... " +sudo docker run --rm "$IMAGE" python3.11 -c " +import importlib.metadata +print(importlib.metadata.version('llama-index-core')) +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 2. 验证 Document 核心对象创建 +echo -n "检查 Document 对象创建... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import Document + +doc = Document(text='LlamaIndex 是一个用于 LLM 应用的数据框架') +assert doc.text == 'LlamaIndex 是一个用于 LLM 应用的数据框架' +assert doc.doc_id is not None +print(f'Document 创建成功,id={doc.doc_id[:8]}...') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 3. 验证 SentenceSplitter 文本分割 +echo -n "检查 SentenceSplitter 文本分割... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core.node_parser import SentenceSplitter +from llama_index.core import Document + +splitter = SentenceSplitter(chunk_size=100, chunk_overlap=10) +doc = Document(text='This is a test sentence. ' * 20) +nodes = splitter.get_nodes_from_documents([doc]) +assert len(nodes) > 0, '文本分割应产生至少一个节点' +print(f'分割产生 {len(nodes)} 个节点') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +echo "=== 所有测试通过 ===" diff --git "a/frameworks/llama_index/0.14.20/0.14.20\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" "b/frameworks/llama_index/0.14.20/0.14.20\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" new file mode 100644 index 0000000000000000000000000000000000000000..9a3d3496b4f7b6cd34a5386f8f4a1c0ac4d7e23a Binary files /dev/null and "b/frameworks/llama_index/0.14.20/0.14.20\346\265\213\350\257\225\347\273\223\346\236\234\346\210\252\345\233\276" differ diff --git a/frameworks/llama_index/0.14.20/Dockerfile b/frameworks/llama_index/0.14.20/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..629348d6e3ab5f68a8c9df42b114ad0878053799 --- /dev/null +++ b/frameworks/llama_index/0.14.20/Dockerfile @@ -0,0 +1,25 @@ +# 基础镜像:OpenCloudOS 9 极简版,适用于纯 Python / CPU 框架 +FROM opencloudos/opencloudos9-minimal:latest + +# 镜像元信息 +LABEL maintainer="pangxb666" +LABEL org.opencontainers.image.source="https://gitee.com/OpenCloudOS/ai-agent-container" +LABEL org.opencontainers.image.description="LlamaIndex 0.14.20 on OpenCloudOS 9" + +# 安装 Python 3.11 及 pip,安装完成后清理缓存以减小镜像体积 +RUN dnf install -y \ + python3.11 \ + python3.11-pip \ + && dnf clean all \ + && rm -rf /var/cache/yum/* + +# 使用清华镜像源安装 LlamaIndex,加速国内网络下的依赖下载 +RUN pip3.11 install --no-cache-dir llama-index==0.14.20 llama-index-core==0.14.20 \ + -i https://pypi.tuna.tsinghua.edu.cn/simple \ + --trusted-host pypi.tuna.tsinghua.edu.cn + +# 记录镜像构建时间,便于追溯 +RUN echo $(date +"%Y-%m-%dT%H:%M:%S%z") > /opencloudos_build_date.txt + +# 默认进入 Python 3.11 交互环境 +CMD ["python3.11"] diff --git a/frameworks/llama_index/0.14.20/README.md b/frameworks/llama_index/0.14.20/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e1b3e17a91cb97c1a43c0270431b834f10c99d94 --- /dev/null +++ b/frameworks/llama_index/0.14.20/README.md @@ -0,0 +1,33 @@ +# LlamaIndex 0.14.20 on OpenCloudOS 9 + +## 基本信息 + +- **框架版本**:0.14.20 +- **基础镜像**:opencloudos/opencloudos9-minimal:latest +- **Python 版本**:3.11 +- **CUDA 版本**:N/A +- **开源地址**:https://github.com/run-llama/llama_index + +## 简介 + +LlamaIndex 是一个用于构建 LLM 驱动应用的数据框架,提供数据摄取、索引、查询等核心能力,支持 RAG(检索增强生成)等场景。 + +## 构建 + +```bash +docker build -t oc9-llama_index:0.14.20 . +``` + +## 使用示例 + +```bash +# 验证版本 +docker run --rm oc9-llama_index:0.14.20 python3.11 -c "import importlib.metadata; print(importlib.metadata.version('llama-index'))" + +# 运行基础测试 +docker run --rm oc9-llama_index:0.14.20 bash /test.sh +``` + +## 已知问题 + +无 diff --git a/frameworks/llama_index/0.14.20/build.conf b/frameworks/llama_index/0.14.20/build.conf new file mode 100644 index 0000000000000000000000000000000000000000..a4ed93cfae99a60dfabb5ad2e4707dd528a7ba40 --- /dev/null +++ b/frameworks/llama_index/0.14.20/build.conf @@ -0,0 +1,4 @@ +# llama_index 0.14.20 on OpenCloudOS 9 +IMAGE_NAME=oc9-llama-index +IMAGE_TAG=0.14.20 +GPU_TEST=false diff --git a/frameworks/llama_index/0.14.20/test.sh b/frameworks/llama_index/0.14.20/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..ac8feeda39b5735e425868eee35f379695d6dd08 --- /dev/null +++ b/frameworks/llama_index/0.14.20/test.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -e + +IMAGE="${1:?ERROR: 缺少镜像参数。用法: bash test.sh }" + +echo "=== LlamaIndex 0.14.20 基础功能测试 ===" + +# 1. 验证 llama-index 可正常导入并检查版本 +echo -n "检查 import llama_index... " +sudo docker run --rm "$IMAGE" python3.11 -c " +import importlib.metadata +print(importlib.metadata.version('llama-index-core')) +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 2. 验证 Document 核心对象创建 +echo -n "检查 Document 对象创建... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core import Document + +doc = Document(text='LlamaIndex 是一个用于 LLM 应用的数据框架') +assert doc.text == 'LlamaIndex 是一个用于 LLM 应用的数据框架' +assert doc.doc_id is not None +print(f'Document 创建成功,id={doc.doc_id[:8]}...') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +# 3. 验证 SentenceSplitter 文本分割 +echo -n "检查 SentenceSplitter 文本分割... " +sudo docker run --rm "$IMAGE" python3.11 -c " +from llama_index.core.node_parser import SentenceSplitter +from llama_index.core import Document + +splitter = SentenceSplitter(chunk_size=100, chunk_overlap=10) +doc = Document(text='This is a test sentence. ' * 20) +nodes = splitter.get_nodes_from_documents([doc]) +assert len(nodes) > 0, '文本分割应产生至少一个节点' +print(f'分割产生 {len(nodes)} 个节点') +" && echo "✓ 通过" || { echo "✗ 失败"; exit 1; } + +echo "=== 所有测试通过 ==="