From bfe8b90c9e09563679dadb6f5b44b06f3fef20dd Mon Sep 17 00:00:00 2001 From: Lanture1064 <34346740+Lanture1064@users.noreply.github.com> Date: Mon, 15 Jan 2024 14:32:39 +0800 Subject: [PATCH] refactor --- evaluation/ragacli_pyproject/LICENSE | 201 ++++++++++++++++++ evaluation/{ => ragacli_pyproject}/README.md | 0 .../dist/ragacli-0.0.1-py3-none-any.whl | Bin 0 -> 6129 bytes .../dist/ragacli-0.0.1.tar.gz | Bin 0 -> 6260 bytes evaluation/ragacli_pyproject/pyproject.toml | 18 ++ .../ragacli.egg-info/PKG-INFO | 67 ++++++ .../ragacli.egg-info/SOURCES.txt | 8 + .../ragacli.egg-info/dependency_links.txt | 1 + .../ragacli.egg-info/top_level.txt | 1 + evaluation/{ => ragacli_pyproject}/setup.py | 0 .../ragacli_pyproject/src/ragacli/__init__.py | 0 .../src/ragacli}/pkg.py | 0 .../src/ragacli}/run.py | 0 13 files changed, 296 insertions(+) create mode 100644 evaluation/ragacli_pyproject/LICENSE rename evaluation/{ => ragacli_pyproject}/README.md (100%) create mode 100644 evaluation/ragacli_pyproject/dist/ragacli-0.0.1-py3-none-any.whl create mode 100644 evaluation/ragacli_pyproject/dist/ragacli-0.0.1.tar.gz create mode 100644 evaluation/ragacli_pyproject/pyproject.toml create mode 100644 evaluation/ragacli_pyproject/ragacli.egg-info/PKG-INFO create mode 100644 evaluation/ragacli_pyproject/ragacli.egg-info/SOURCES.txt create mode 100644 evaluation/ragacli_pyproject/ragacli.egg-info/dependency_links.txt create mode 100644 evaluation/ragacli_pyproject/ragacli.egg-info/top_level.txt rename evaluation/{ => ragacli_pyproject}/setup.py (100%) create mode 100644 evaluation/ragacli_pyproject/src/ragacli/__init__.py rename evaluation/{src => ragacli_pyproject/src/ragacli}/pkg.py (100%) rename evaluation/{run => ragacli_pyproject/src/ragacli}/run.py (100%) diff --git a/evaluation/ragacli_pyproject/LICENSE b/evaluation/ragacli_pyproject/LICENSE new file mode 100644 index 000000000..77a54b128 --- /dev/null +++ b/evaluation/ragacli_pyproject/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2023 KubeAGI] [name of copyright owner] + + 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. diff --git a/evaluation/README.md b/evaluation/ragacli_pyproject/README.md similarity index 100% rename from evaluation/README.md rename to evaluation/ragacli_pyproject/README.md diff --git a/evaluation/ragacli_pyproject/dist/ragacli-0.0.1-py3-none-any.whl b/evaluation/ragacli_pyproject/dist/ragacli-0.0.1-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..065a90746f0695c5ada44b6a785efe8d1d81ac52 GIT binary patch literal 6129 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 literal 0 HcmV?d00001 diff --git a/evaluation/ragacli_pyproject/dist/ragacli-0.0.1.tar.gz b/evaluation/ragacli_pyproject/dist/ragacli-0.0.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..e164730090ab1d174a8be90071c047721f1b12ff GIT binary patch literal 6260 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.0"] +build-backend = "setuptools.build_meta" + +[project] +name = "ragacli" +version = "0.0.1" +authors = [ + { name = "Kielo", email = "lanture1064@gmail.com" }, +] +description = "A one-step Ragas cli tool to evaluate RAG apps" +readme = "README.md" +requires-python = ">=3.7" +classifiers = [ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", +] \ No newline at end of file diff --git a/evaluation/ragacli_pyproject/ragacli.egg-info/PKG-INFO b/evaluation/ragacli_pyproject/ragacli.egg-info/PKG-INFO new file mode 100644 index 000000000..708bc462e --- /dev/null +++ b/evaluation/ragacli_pyproject/ragacli.egg-info/PKG-INFO @@ -0,0 +1,67 @@ +Metadata-Version: 2.1 +Name: ragacli +Version: 0.0.1 +Summary: A one-step Ragas cli tool to evaluate RAG apps +Author: Kielo +Author-email: Kielo +Classifier: Programming Language :: Python :: 3 +Classifier: License :: OSI Approved :: MIT License +Classifier: Operating System :: OS Independent +Requires-Python: >=3.8 +Description-Content-Type: text/markdown +License-File: LICENSE + +# Ragas CLI + +A one-step Ragas cli tool to evaluate QCAG testsets generated by RAG apps. (Q = Question, C = Contexts, A = Answer, G = Ground_truth) + +## Install with pip + +```bash +pip install ragacli +``` + +## Arguments + +- `--model`: Specifies the model to use for evaluation. + - Default value is "gpt-3.5-turbo". Langchain compatible. +- `--api_base`: Specifies the base URL for the API. + - Default value is "https://api.openai.com/v1". +- `--api_key`: Specifies the API key to authenticate requests. + - Not required if using psuedo-openai API server, e.g. vLLM, Fastchat, etc. +- `--embeddings`: Specifies the Huggingface embeddings model to use for evaluation. + - Embeddings will run **locally**. + - Will use OpenAI embeddings if not set. + - Better set if using psuedo-openai API server. +- `--metrics`: Specifies the metrics to use for evaluation. + - Will use Ragas default metrics if not set. + - Default metrics: `["answer_relevancy", "context_precision", "faithfulness", "context_recall", "context_relevancy"]` + - Other metrics: `"answer_similarity", "answer_correctness"` +- `--dataset`: Specifies the path to the dataset for evaluation. + - Dataset format must meet RAGAS requirements. + - Will use fiqa dataset as demo if not set. + +## Usage + +### Fiqa dataset demo: + +```bash +python3 -m ragacli --api_key "YOUR_OPENAI_API_KEY" +``` + +### Evaluate with GPT-4 and `BAAI/bge-small-en` embeddings + +The huggingface embeddings will run locally, so **Make sure your machine works and have [sentence-transformers](https://pypi.org/project/sentence-transformers/) installed:** + +```bash +pip install sentence-transformers +``` +Then run: + +```bash +python3 -m ragacli --model "gpt-4" --api_key "YOUR_OPENAI_API_KEY" --embeddings "BAAI/bge-small-en" --dataset "path/to/dataset.csv" +``` + +### Prepare Dataset + +See [**Ragas documentation**](https://docs.ragas.io/en/stable/howtos/applications/data_preparation.html) diff --git a/evaluation/ragacli_pyproject/ragacli.egg-info/SOURCES.txt b/evaluation/ragacli_pyproject/ragacli.egg-info/SOURCES.txt new file mode 100644 index 000000000..c300a3654 --- /dev/null +++ b/evaluation/ragacli_pyproject/ragacli.egg-info/SOURCES.txt @@ -0,0 +1,8 @@ +LICENSE +README.md +pyproject.toml +setup.py +ragacli.egg-info/PKG-INFO +ragacli.egg-info/SOURCES.txt +ragacli.egg-info/dependency_links.txt +ragacli.egg-info/top_level.txt \ No newline at end of file diff --git a/evaluation/ragacli_pyproject/ragacli.egg-info/dependency_links.txt b/evaluation/ragacli_pyproject/ragacli.egg-info/dependency_links.txt new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/evaluation/ragacli_pyproject/ragacli.egg-info/dependency_links.txt @@ -0,0 +1 @@ + diff --git a/evaluation/ragacli_pyproject/ragacli.egg-info/top_level.txt b/evaluation/ragacli_pyproject/ragacli.egg-info/top_level.txt new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/evaluation/ragacli_pyproject/ragacli.egg-info/top_level.txt @@ -0,0 +1 @@ + diff --git a/evaluation/setup.py b/evaluation/ragacli_pyproject/setup.py similarity index 100% rename from evaluation/setup.py rename to evaluation/ragacli_pyproject/setup.py diff --git a/evaluation/ragacli_pyproject/src/ragacli/__init__.py b/evaluation/ragacli_pyproject/src/ragacli/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/evaluation/src/pkg.py b/evaluation/ragacli_pyproject/src/ragacli/pkg.py similarity index 100% rename from evaluation/src/pkg.py rename to evaluation/ragacli_pyproject/src/ragacli/pkg.py diff --git a/evaluation/run/run.py b/evaluation/ragacli_pyproject/src/ragacli/run.py similarity index 100% rename from evaluation/run/run.py rename to evaluation/ragacli_pyproject/src/ragacli/run.py