mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-08-14 23:56:01 +08:00
create the python sdk to return version (#1039)
### What problem does this PR solve? Create python SDK to return the version of RAGFlow. ### Type of change - [x] New Feature (non-breaking change which adds functionality) --------- Co-authored-by: cecilia-uu <konghui1996@163.com>
This commit is contained in:
parent
9517a27844
commit
7d41de42a1
6
.gitignore
vendored
6
.gitignore
vendored
@ -30,3 +30,9 @@ docker/ragflow-logs/
|
|||||||
/flask_session
|
/flask_session
|
||||||
/logs
|
/logs
|
||||||
rag/res/deepdoc
|
rag/res/deepdoc
|
||||||
|
|
||||||
|
# Exclude sdk generated files
|
||||||
|
SDK/python/ragflow.egg-info/
|
||||||
|
SDK/python/build/
|
||||||
|
SDK/python/dist/
|
||||||
|
SDK/python/ragflow_sdk.egg-info/
|
1
SDK/python/README.md
Normal file
1
SDK/python/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
# infinity
|
3
SDK/python/hello_ragflow.py
Normal file
3
SDK/python/hello_ragflow.py
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
import ragflow
|
||||||
|
|
||||||
|
print(ragflow.__version__)
|
24
SDK/python/pyproject.toml
Normal file
24
SDK/python/pyproject.toml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
[project]
|
||||||
|
name = "ragflow"
|
||||||
|
version = "0.8.0.dev1"
|
||||||
|
authors = [
|
||||||
|
{ name = "The RAGFlow Development Team", email = "author@example.com" },
|
||||||
|
] # TODO: email
|
||||||
|
dependencies = ["pytest~=8.2.0"]
|
||||||
|
description = "ragflow"
|
||||||
|
readme = "README.md"
|
||||||
|
requires-python = ">=3.10"
|
||||||
|
classifiers = [
|
||||||
|
"Programming Language :: Python :: 3",
|
||||||
|
"License :: OSI Approved :: Apache License2",
|
||||||
|
"Operating System :: OS Independent",
|
||||||
|
]
|
||||||
|
|
||||||
|
[build-system]
|
||||||
|
requires = ["setuptools>=61.0", "wheel"]
|
||||||
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
|
[project.urls]
|
||||||
|
"Homepage" = "https://github.com/pypa/sampleproject"
|
||||||
|
"Bug Tracker" = "https://github.com/pypa/sampleproject/issues"
|
||||||
|
# TODO
|
3
SDK/python/ragflow/__init__.py
Normal file
3
SDK/python/ragflow/__init__.py
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
import importlib.metadata
|
||||||
|
|
||||||
|
__version__ = importlib.metadata.version("ragflow")
|
28
SDK/python/ragflow/ragflow.py
Normal file
28
SDK/python/ragflow/ragflow.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#
|
||||||
|
# Copyright 2024 The InfiniFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
import os
|
||||||
|
import dotenv
|
||||||
|
import typing
|
||||||
|
from api.utils.file_utils import get_project_base_directory
|
||||||
|
|
||||||
|
|
||||||
|
def get_versions() -> typing.Mapping[str, typing.Any]:
|
||||||
|
dotenv.load_dotenv(dotenv.find_dotenv())
|
||||||
|
return dotenv.dotenv_values()
|
||||||
|
|
||||||
|
|
||||||
|
def get_rag_version() -> typing.Optional[str]:
|
||||||
|
return get_versions().get("RAGFLOW_VERSION", "dev")
|
19
SDK/python/setup.py
Normal file
19
SDK/python/setup.py
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# Copyright(C) 2023 InfiniFlow, Inc. All rights reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
import setuptools
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
setuptools.setup(packages=['ragflow'])
|
||||||
|
|
8
SDK/python/test/test_basic.py
Normal file
8
SDK/python/test/test_basic.py
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
from test_sdkbase import TestSdk
|
||||||
|
import ragflow
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
|
||||||
|
class TestCase(TestSdk):
|
||||||
|
def test_version(self):
|
||||||
|
print(ragflow.__version__)
|
3
SDK/python/test/test_sdkbase.py
Normal file
3
SDK/python/test/test_sdkbase.py
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
class TestSdk():
|
||||||
|
def test_version(self):
|
||||||
|
print("test_sdk")
|
Loading…
x
Reference in New Issue
Block a user