General Introduction
Ragas is a tool specifically designed to evaluate and optimize Retrieval Augmented Generation (RAG) systems. It provides a comprehensive set of evaluation metrics by analyzing the relationships between queries, retrieval contexts, and generated answers. These metrics include fidelity, answer relevance, contextual relevance, contextual recall, and contextual precision.Ragas helps developers evaluate and optimize the performance of RAG systems to ensure that generated answers are accurate, relevant, and based on retrieved content. Whether you are developing a new system or optimizing an existing one, Ragas provides powerful support.
Function List
- Fidelity assessment: A measure of the fidelity of the generated answer to the retrieved context.
- Assessment of answer relevance: Evaluate how relevant the generated answer is to the original query.
- Contextual relevance assessment: Measure how well the retrieved information fits the problem.
- Contextual recall assessment: Evaluate whether the retrieved context contains all the information needed to answer the question.
- Contextual accuracy assessment: Measures the quality of the ordering of retrieved relevant contexts in the results.
Using Help
Installation process
- Installation via PyPI::
pip install ragas
- Installation from source::
pip install git+https://github.com/explodinggradients/ragas
Quick Start
- Importing the necessary modules::
from ragas import SingleTurnSample
from ragas.metrics import AspectCritic
- Preparing test data::
test_data = {
"user_input": "summarise given text\nThe company reported an 8% rise in Q3 2024, driven by strong performance in the Asian market. Sales in this region have significantly contributed to the overall growth. Analysts attribute this success to strategic marketing and product localization. The positive trend in the Asian market is expected to continue into the next quarter.",
"response": "The company experienced an 8% increase in Q3 2024, largely due to effective marketing strategies and product adaptation, with expectations of continued growth in the coming quarter."
}
- Evaluation of the RAG system::
evaluator_llm = LangchainLLMWrapper(ChatOpenAI(model="gpt-4o"))
metric = AspectCritic(name="summary_accuracy", llm=evaluator_llm, definition="Verify if the summary is accurate.")
await metric.single_turn_ascore(SingleTurnSample(**test_data))
Detailed function operation flow
- Fidelity assessment::
- Use the fidelity metrics provided by Ragas to assess whether the generated answers are faithful to the retrieved context.
- The fidelity evaluation results are obtained and analyzed by calling the corresponding evaluation functions.
- Assessment of answer relevance::
- Using Ragas' answer relevance metrics, the degree of relevance of the generated answers to the original query is evaluated.
- Customize the assessment of the relevance of the generated answers by configuring the relevance assessment parameters.
- Contextual relevance assessment::
- Use Ragas' contextual relevance metrics to measure how well the retrieved information fits the problem.
- Get the result of the context relevance evaluation by calling the relevance evaluation function.
- Contextual recall assessment::
- Use Ragas' context recall metric to assess whether the retrieved context contains all the information needed to answer the question.
- Ensure that the retrieved context fully covers the information needed for the problem by setting the recall evaluation parameters.
- Contextual accuracy assessment::
- Use Ragas' contextual accuracy metrics to measure the quality of the ordering of retrieved relevant contexts in the results.
- Optimize the ranking of retrieval results by configuring accuracy evaluation parameters.
Ragas Assessment QA Notes
QA recalls generally contain two components:
1. Retriever - Retrieves the most relevant information needed to answer a query.
2. Generator - Use the retrieved information to generate answers.
Assessing QA accuracy has always been a big issue.ROUGE(A Package for Automatic Evaluation of Summaries(math.) andBLUE(a method for automatic evaluation of machine translation) is less effective.
Current methodology: reference-free assessment using a powerful LLM, so talk carefully about Ragas.
Ragas is designed to address these limitations of using LLM to evaluate your QA pipeline, while also providing actionable metrics using as little, more cost-effective, and faster annotated data as possible.
Ragas is a framework that helps you evaluate these different aspects of your QA pipeline. It provides you with a number of metrics to evaluate different aspects of your QA system.
Indicators used to assess retrieval: offers and provides you with a measure of the performance of the retrieval system.
context_relevancy
context_recall
Assessment of the indicators generated: Provide which measures the illusion and which measures how to answer the question.
faithfulness
answer_relevancy
faithfulness
Measure the factual accuracy of the generated answers against the context provided.
This is done in two steps.
First, given a question and generated answers, Ragas uses LLM to find out the statements made by the generated answers. This gives a list of statements that we must check for validity. In step 2, given the list of statements and the returned context, Ragas uses LLM to check whether the statements provided are supported by the context. The number of correct statements is added and divided by the total number of statements in the generated answer to get the score for the given example.
Step one:
According to the first prompt.
Given a question and answer, create one or more statements from answer.
question: Who was Albert Einstein and what is he best known for?
answer: He was a German-born theoretical physicist, widely acknowledged to be one of the greatest and most influential physicists of all time. He was best known for developing the theory of relativity, he also made important contributions to the development of the theory of quantum mechanics.
statements:
Albert Einstein was born in Germany.
Albert Einstein was best known for his theory of relativity.
question: Cadmium Chloride is slightly soluble in this chemical, it is also called what?
answer: alochol
statements:
Cadmium Chloride is slightly soluble in alcohol.
question: Were Shahul and Jithin of the same nationality?
answer: They were from different countries.
statements:
Shahul and Jithin were from different countries.
question:膳食分析是什么?
answer: 膳食分析是一种评估人们摄入的食物的方法,通过详细分析一周内所吃的食物,来确定人们摄入的营养素种类和数量。它可以揭示人们是否缺乏某些营养素,以及食物中是否存在一些对健康有害的物质,如糖、盐、咖啡因、酒精、食品添加剂和防腐剂。膳食分析可以提供关于脂肪、碳水化合物、蛋白质和热量的摄入量的评估。然而,膳食分析并不能全面考虑到食物中营养素含量的变异性、个人的营养素需求,以及营养素的吸收和利用情况。因此,它可能并不是评估个人的确切营养状况最准确的方法。
statements:
Get result 1:
['膳食分析是一种评估人们摄入的食物的方法。',
'膳食分析可以确定人们摄入的营养素种类和数量。',
'膳食分析可以揭示人们是否缺乏某些营养素。',
'膳食分析可以揭示食物中是否存在一些对健康有害的物质。',
'膳食分析可以提供关于脂肪、碳水化合物、蛋白质和热量的摄入量的评估。',
'膳食分析可能并不是评估个人的确切营养状况最准确的方法。']
Step two:
According to the second prompt.
Prompt: Natural language inference
Consider the given context and following statements, then determine whether they are supported by the information present in the context.Provide a brief explanation for each statement before arriving at the verdict (Yes/No). Provide a final verdict for each statement in order at the end in the given format. Do not deviate from the specified format.
Context:
John is a student at XYZ University. He is pursuing a degree in Computer Science. He is enrolled in several courses this semester, including Data Structures, Algorithms, and Database Management. John is a diligent student and spends a significant amount of time studying and completing assignments. He often stays late in the library to work on his projects.
statements:
1. John is majoring in Biology.
2. John is taking a course on Artificial Intelligence.
3. John is a dedicated student.
4. John has a part-time job.
5. John is interested in computer programming.
Answer:
1. John is majoring in Biology.
Explanation: John's major is explicitly mentioned as Computer Science. There is no information suggesting he is majoring in Biology. Verdict: No.
2. John is taking a course on Artificial Intelligence.
Explanation: The context mentions the courses John is currently enrolled in, and Artificial Intelligence is not mentioned. Therefore, it cannot be deduced that John is taking a course on AI. Verdict: No.
3. John is a dedicated student.
Explanation: The prompt states that he spends a significant amount of time studying and completing assignments. Additionally, it mentions that he often stays late in the library to work on his projects, which implies dedication. Verdict: Yes.
4. John has a part-time job.
Explanation: There is no information given in the context about John having a part-time job. Therefore, it cannot be deduced that John has a part-time job. Verdict: No.
5. John is interested in computer programming.
Explanation: The context states that John is pursuing a degree in Computer Science, which implies an interest in computer programming. Verdict: Yes.
Final verdict for each statement in order: No. No. Yes. No. Yes.
context:
你想要达到什么样的健康程度?如果你想了解自己精神和身体的全部潜在能力,确定你的最佳营养需求是非常必要的。但是如果你的营养需求很特别,那么你该如何发现这一点呢?从1980年开始,我制定并完善了一套分析人体营养需求的体系,此体系建立在评估影响个人营养需求的主要因素的基础上。此体系已经在10万人当中进行了测试并得到了验证,现在已被世界各国的临床营养学家所应用。无数人已经从中获益,因此,我知道从这个体系中可以得到什么样的结果。这些结果包括:更敏锐的思维、更好的记忆力、更强的体力、更好的体重控制效果、降低胆固醇含量、使得病情好转。尽管多数被诊断为有病的人已经受益于个人健康计划,但这个健康计划是以预防为主要目标,而不是以治病为主的。如果你正在进行医药治疗,请确认这个营养补充方案与你接受的治疗措施是否能够很好地相容。影响你营养需求的因素,至少有8项因素会影响你的营养需求量。年龄、性别以及运动量都是很常见的影响因素,但污染、压力、基因遗传、你过去的健康状况,当然还有膳食所能提供的营养素以及反营养物质,却不是能够轻易了解的。但是所有的这些细节以及更多的因素,都必须纳入考虑当中。通过4种分析方法——膳食分析、生化分析、症状分析、生活方式分析,可以了解这些细节。膳食分析这种方式似乎是从容易着手的地方开始:搞清楚人们摄入的食物是什么,就能发现缺乏的营养素是什么。
但不幸的是,如果对一周内所吃的食物进行详细分析,并不能综合考虑到食物营养素含量的变异性、个人的营养素需求,或者营养素是否能被吸收、吸收后的营养素又是否能被有效地利用等情况。我见过许多人的饮食质量很高,却依然有维生素缺乏的症状。对其中绝大部分人来说,问题在于营养素吸收不良。这些可变因素,使得某些通过计算机进行的膳食分析不如设想的准确。膳食分析对于评估那些能影响到人们营养素需求的食物很有用处,比如糖、盐、咖啡、茶、酒精、食品添加剂和防腐剂。另一些因素,如脂肪、碳水化合物、蛋白质和热量的摄入量,也可由膳食分析进行评估。诸如头发矿物质分析与维生素血液分析这样的实验,可以提供关于体内生物化学状态的确切信息,也能让营养顾问了解你身体的确切营养状况。但并不是所有这些实验都能对规划你的营养方案提供有用的信息。为了让这些信息尽可能精确,任何关于维生素或矿物质的检测都必须反映出营养素在体内发挥作用的能力。例如,铁是构成血红细胞的必需元素,有助于体内氧的运输。通过测定细胞中铁的营养状况,可能会对你的铁需求有一个很好的估测。从另一方面来讲,维生素氏在血液中没有像铁那样的直接作用。它主要作用于大脑当中的化学物质5-羟色胺,或在甲基化反应中起作用,降低同型半胱氨酸含量。所以,仅仅测定血液中的维生素B6,并不能真实地反映你是否获得了充足的营养素供给以及体内的维生素B6是否运转正常。相比之下,检测同型半胱氨酸浓度等项目意义更大。如果你已经获得了充足的维生素、维生素B和叶酸,那么你的同型半胱氨酸浓度就很低,但假如同型半胱氨酸浓度很高,则表明你需要更多的其中一种或多种营养素。我们称这种测试方式为功能测试,因为这个测试能够精确地测定你体内生化反应的某项特殊功能是否运转正常。
statements:
1.膳食分析是一种评估人们摄入的食物的方法。
2.膳食分析可以确定人们摄入的营养素种类和数量。
3.膳食分析可以揭示人们是否缺乏某些营养素。
4.膳食分析可以揭示食物中是否存在一些对健康有害的物质。
5.膳食分析可以提供关于脂肪、碳水化合物、蛋白质和热量的摄入量的评估。
6.膳食分析可能并不是评估个人的确切营养状况最准确的方法。
Answer:
Get result 2:
1. 膳食分析是一种评估人们摄入的食物的方法.
explanation: the context mentions that dietary analysis is a method to understand what food people consume. verdict: yes.
2. 膳食分析可以确定人们摄入的营养素种类和数量.
explanation: the context mentions that dietary analysis can evaluate the intake of nutrients such as sugar, salt, coffee, tea, alcohol, food additives, and preservatives. it does not explicitly state that it can determine the types and quantities of nutrients consumed. verdict: no.
3. 膳食分析可以揭示人们是否缺乏某些营养素.
explanation: the context mentions that dietary analysis can be useful in assessing the intake of nutrients that can affect people's nutritional needs. this implies that it can reveal if someone is lacking certain nutrients. verdict: yes.
4. 膳食分析可以揭示食物中是否存在一些对健康有害的物质.
explanation: the context mentions that dietary analysis can be useful in evaluating the intake of substances that can affect people's nutritional needs, such as food additives and preservatives. this implies that it can reveal the presence of harmful substances in food. verdict: yes.
5. 膳食分析可以提供关于脂肪、碳水化合物、蛋白质和热量的摄入量的评估.
explanation: the context mentions that the intake of factors such as fat, carbohydrates, protein, and calories can be evaluated through dietary analysis. verdict: yes.
6. 膳食分析可能并不是评估个人的确切营养状况最准确的方法.
explanation: the context mentions that while dietary analysis can provide useful information, it may not be the most accurate method for assessing an individual's exact nutritional status. verdict: yes.
final verdict for each statement in order: yes. no. yes. yes. yes. yes.
groundfinal verdict for each statement in order:
localize toyes. no. yes. yes. yes. yes.
Counting points:
output = "yes. no. yes. yes. yes. yes."
score = sum(0 if "yes" in answer else 1
for answer in output.strip().split(".")
if answer != ""
)
# score = 1 - score/len(statements)
socre = 1 - 1/6
# score = 0.8333333333333334
That is the final score for FAITHFULNESSD.
answer_relevancy
Measure the relevance and focus of the answer to the question.
For a given generated answer, Ragas uses LLM to find the possible questions for which the generated answer will be the answer and calculates the similarity to the actual question.
According to answers.
Generate question for the given answer.
Answer:
The PSLV-C56 mission is scheduled to be launched on Sunday, 30 July 2023 at 06:30 IST / 01:00 UTC. It will be launched from the Satish Dhawan Space Centre, Sriharikota, Andhra Pradesh, India
Question: When is the scheduled launch date and time for the PSLV-C56 mission, and where will it be launched from?
Answer:膳食分析是一种评估个人饮食中摄入的食物种类和数量的方法。通过对一周内所吃的食物进行详细分析,可以了解人们摄入的营养素种类和含量,从而发现可能存在的营养素缺乏或过量的情况。膳食分析对于评估食物中的营养素含量、摄入量以及一些影响营养需求的因素(如糖、盐、咖啡因、酒精等)是有用的。然而,膳食分析并不能综合考虑到个体的营养素需求、营养素吸收和利用的情况,因此并不是评估个人营养状况的唯一方法。
Question:
Get:
[
"What is dietary analysis and how is it used to evaluate an individual's nutritional intake?",
"What is dietary analysis and how is it used to assess an individual's nutritional intake?",
"What is dietary analysis and how is it used to assess an individual's nutritional intake?"
]
Then calculate the similarity between [problem] and these three results:
Similarity calculation process: usingtext-embedding-ada-002
Perform vectorization and then compute the cosine similarity.
def calculate_similarity(
self: t.Self, question: str, generated_questions: list[str]
):
question_vec = np.asarray(self.embedding.embed_query(question)).reshape(1, -1)
gen_question_vec = np.asarray(
self.embedding.embed_documents(generated_questions)
)
norm = np.linalg.norm(gen_question_vec, axis=1) * np.linalg.norm(
question_vec, axis=1)
return (
np.dot(gen_question_vec, question_vec.T).reshape(-1,)/ norm
)
Get:
[0.83663467 0.83484782 0.83484782]
Then average:
answer_relevancy_score: 0.8354434364200779
context_relevancy
Measure the signal-to-noise ratio in the retrieved context. Given a question, Ragas calls LLM to find the sentences needed to answer the question from the retrieved context. The ratio between the required sentences and the total sentences in the context provides you with a score.
Input:
Task: Candidate sentence extraction.
Given the question and context, extract minimum number of sentences from context required to answer the question. If the context do not contain information required to answer the question return "No candidate sentences found".
question: Which equation is known as worlds most famous equation?
context:
Albert Einstein (14 March 1879 – 18 April 1955) was a German-born theoretical physicist,[5] widely ranked among the greatest and most influential scientists of all time. Best known for developing the theory of relativity, he also made important contributions to quantum mechanics, and was thus a central figure in the revolutionary reshaping of the scientific understanding of nature that modern physics accomplished in the first decades of the twentieth century.
His mass–energy equivalence formula E = mc2, which arises from relativity theory, has been called "the world's most famous equation".
sentences:His mass–energy equivalence formula E = mc2, which arises from relativity theory, has been called "the world's most famous equation".
question: Were Scott Derrickson and Ed Wood of the same nationality?
context :
Scott Derrickson (born July 16, 1966) is an American director, screenwriter and producer He lives in Los Angeles, California He is best known for directing horror films such as "Sinister", "The Exorcism of Emily Rose", and "Deliver Us From Evil", as well as the 2016 Marvel Cinematic Universe installment, "Doctor Strange"Tyler Bates is an American musician, music producer, and composer for films, television, and video games. Adam Collis is an American filmmaker and actor.Conrad Brooks is an American actor.Edward Davis Wood Jr. (October 10, 1924 – December 10, 1978) was an American filmmaker, actor, writer, producer, and director.
sentences:Scott Derrickson (born July 16, 1966) is an American director, screenwriter and producer. Edward Davis Wood Jr. (October 10, 1924 – December 10, 1978) was an American filmmaker, actor, writer, producer, and director.
question: How many were killed in the Tiananmen Square incident?
context:
Tiananmen Square incident, also called June Fourth incident or 6/4, series of protests and demonstrations in China in the spring of 1989 that culminated on the night of June 3–4 with a government crackdown on the demonstrators in Tiananmen Square in Beijing.
sentences: No candidate sentences found.
question:膳食分析是什么?
context:
你想要达到什么样的健康程度?如果你想了解自己精神和身体的全部潜在能力,确定你的最佳营养需求是非常必要的。但是如果你的营养需求很特别,那么你该如何发现这一点呢?从1980年开始,我制定并完善了一套分析人体营养需求的体系,此体系建立在评估影响个人营养需求的主要因素的基础上。此体系已经在10万人当中进行了测试并得到了验证,现在已被世界各国的临床营养学家所应用。无数人已经从中获益,因此,我知道从这个体系中可以得到什么样的结果。这些结果包括:更敏锐的思维、更好的记忆力、更强的体力、更好的体重控制效果、降低胆固醇含量、使得病情好转。尽管多数被诊断为有病的人已经受益于个人健康计划,但这个健康计划是以预防为主要目标,而不是以治病为主的。如果你正在进行医药治疗,请确认这个营养补充方案与你接受的治疗措施是否能够很好地相容。影响你营养需求的因素,至少有8项因素会影响你的营养需求量。年龄、性别以及运动量都是很常见的影响因素,但污染、压力、基因遗传、你过去的健康状况,当然还有膳食所能提供的营养素以及反营养物质,却不是能够轻易了解的。但是所有的这些细节以及更多的因素,都必须纳入考虑当中。通过4种分析方法——膳食分析、生化分析、症状分析、生活方式分析,可以了解这些细节。膳食分析这种方式似乎是从容易着手的地方开始:搞清楚人们摄入的食物是什么,就能发现缺乏的营养素是什么。
但不幸的是,如果对一周内所吃的食物进行详细分析,并不能综合考虑到食物营养素含量的变异性、个人的营养素需求,或者营养素是否能被吸收、吸收后的营养素又是否能被有效地利用等情况。我见过许多人的饮食质量很高,却依然有维生素缺乏的症状。对其中绝大部分人来说,问题在于营养素吸收不良。这些可变因素,使得某些通过计算机进行的膳食分析不如设想的准确。膳食分析对于评估那些能影响到人们营养素需求的食物很有用处,比如糖、盐、咖啡、茶、酒精、食品添加剂和防腐剂。另一些因素,如脂肪、碳水化合物、蛋白质和热量的摄入量,也可由膳食分析进行评估。诸如头发矿物质分析与维生素血液分析这样的实验,可以提供关于体内生物化学状态的确切信息,也能让营养顾问了解你身体的确切营养状况。但并不是所有这些实验都能对规划你的营养方案提供有用的信息。为了让这些信息尽可能精确,任何关于维生素或矿物质的检测都必须反映出营养素在体内发挥作用的能力。例如,铁是构成血红细胞的必需元素,有助于体内氧的运输。通过测定细胞中铁的营养状况,可能会对你的铁需求有一个很好的估测。从另一方面来讲,维生素氏在血液中没有像铁那样的直接作用。它主要作用于大脑当中的化学物质5-羟色胺,或在甲基化反应中起作用,降低同型半胱氨酸含量。所以,仅仅测定血液中的维生素B6,并不能真实地反映你是否获得了充足的营养素供给以及体内的维生素B6是否运转正常。相比之下,检测同型半胱氨酸浓度等项目意义更大。如果你已经获得了充足的维生素、维生素B和叶酸,那么你的同型半胱氨酸浓度就很低,但假如同型半胱氨酸浓度很高,则表明你需要更多的其中一种或多种营养素。我们称这种测试方式为功能测试,因为这个测试能够精确地测定你体内生化反应的某项特殊功能是否运转正常。
sentences:
Get:
[
'膳食分析这种方式似乎是从容易着手的地方开始:搞清楚人们摄入的食物是什么,就能发现缺乏的营养素是什么。',
'膳食分析是从容易着手的地方开始:搞清楚人们摄入的食物是什么,就能发现缺乏的营养素是什么。'
]
Split each result, look it up in context, and see what percentage of the split clauses in each result appear in the original text overlap_scores.
Assuming that we get[1.0, 1.0]
The
Context:
你想要达到什么样的健康程度?如果你想了解自己精神和身体的全部潜在能力,确定你的最佳营养需求是非常必要的。但是如果你的营养需求很特别,那么你该如何发现这一点呢?从1980年开始,我制定并完善了一套分析人体营养需求的体系,此体系建立在评估影响个人营养需求的主要因素的基础上。此体系已经在10万人当中进行了测试并得到了验证,现在已被世界各国的临床营养学家所应用。无数人已经从中获益,因此,我知道从这个体系中可以得到什么样的结果。这些结果包括:更敏锐的思维、更好的记忆力、更强的体力、更好的体重控制效果、降低胆固醇含量、使得病情好转。尽管多数被诊断为有病的人已经受益于个人健康计划,但这个健康计划是以预防为主要目标,而不是以治病为主的。如果你正在进行医药治疗,请确认这个营养补充方案与你接受的治疗措施是否能够很好地相容。影响你营养需求的因素,至少有8项因素会影响你的营养需求量。年龄、性别以及运动量都是很常见的影响因素,但污染、压力、基因遗传、你过去的健康状况,当然还有膳食所能提供的营养素以及反营养物质,却不是能够轻易了解的。但是所有的这些细节以及更多的因素,都必须纳入考虑当中。通过4种分析方法——膳食分析、生化分析、症状分析、生活方式分析,可以了解这些细节。膳食分析这种方式似乎是从容易着手的地方开始:搞清楚人们摄入的食物是什么,就能发现缺乏的营养素是什么。
但不幸的是,如果对一周内所吃的食物进行详细分析,并不能综合考虑到食物营养素含量的变异性、个人的营养素需求,或者营养素是否能被吸收、吸收后的营养素又是否能被有效地利用等情况。我见过许多人的饮食质量很高,却依然有维生素缺乏的症状。对其中绝大部分人来说,问题在于营养素吸收不良。这些可变因素,使得某些通过计算机进行的膳食分析不如设想的准确。膳食分析对于评估那些能影响到人们营养素需求的食物很有用处,比如糖、盐、咖啡、茶、酒精、食品添加剂和防腐剂。另一些因素,如脂肪、碳水化合物、蛋白质和热量的摄入量,也可由膳食分析进行评估。诸如头发矿物质分析与维生素血液分析这样的实验,可以提供关于体内生物化学状态的确切信息,也能让营养顾问了解你身体的确切营养状况。但并不是所有这些实验都能对规划你的营养方案提供有用的信息。为了让这些信息尽可能精确,任何关于维生素或矿物质的检测都必须反映出营养素在体内发挥作用的能力。例如,铁是构成血红细胞的必需元素,有助于体内氧的运输。通过测定细胞中铁的营养状况,可能会对你的铁需求有一个很好的估测。从另一方面来讲,维生素氏在血液中没有像铁那样的直接作用。它主要作用于大脑当中的化学物质5-羟色胺,或在甲基化反应中起作用,降低同型半胱氨酸含量。所以,仅仅测定血液中的维生素B6,并不能真实地反映你是否获得了充足的营养素供给以及体内的维生素B6是否运转正常。相比之下,检测同型半胱氨酸浓度等项目意义更大。如果你已经获得了充足的维生素、维生素B和叶酸,那么你的同型半胱氨酸浓度就很低,但假如同型半胱氨酸浓度很高,则表明你需要更多的其中一种或多种营养素。我们称这种测试方式为功能测试,因为这个测试能够精确地测定你体内生化反应的某项特殊功能是否运转正常。
The similarity of the two answers is then calculated using bert or jaccard to get agr_score.
Then context_relevancy can be calculated:
context_relevancy = agr_score * (overlap_scores的平均值)
context_recall
Before you can test this, you need to provide aground_truthThe
Follow the prompt:
Given a context, and an answer, analyze each sentence in the answer and classify if the sentence can be attributed to the given context or not.
Think in steps and reason bofore coming to conclusion.
context: Albert Einstein (14 March 1879 – 18 April 1955) was a German-born theoretical physicist,widely held to be one of the greatest and most influential scientists of all time. Best known for developing the theory of relativity, he also made important contributions to quantum mechanics, and was thus a central figure in the revolutionary reshaping of the scientific understanding of nature that modern physics accomplished in the first decades of the twentieth century. His mass–energy equivalence formula E = mc2, which arises from relativity theory, has been called "the world's most famous equation". He received the 1921 Nobel Prize in Physics "for his services to theoretical physics, and especially for his discovery of the law of the photoelectric effect", a pivotal step in the development of quantum theory. His work is also known for its influence on the philosophy of science. In a 1999 poll of 130 leading physicists worldwide by the British journal Physics World, Einstein was ranked the greatest physicist of all time. His intellectual achievements and originality have made Einstein synonymous with genius.
answer: Albert Einstein born in 14 March 1879 was German-born theoretical physicist, widely held to be one of the greatest and most influential scientists of all time. He received the 1921 Nobel Prize in Physics "for his services to theoretical physics. He published 4 papers in 1905. Einstein moved to Switzerland in 1895
classification
1. Albert Einstein born in 14 March 1879 was German-born theoretical physicist, widely held to be one of the greatest and most influential scientists of all time. The date of birth of Einstein is mentioned clearly in the context. So [Attributed]
2. He received the 1921 Nobel Prize in Physics "for his services to theoretical physics. The exact sentence is present in the given context. So [Attributed]
3. He published 4 papers in 1905. There is no mention about papers he wrote in given the context. So [Not Attributed]
4. Einstein moved to Switzerland in 1895. There is not supporting evidence for this in the given the context. So [Not Attributed]
context:{context}
answer:{ground_truth}
classification:
Getting results:
[
'#############[Attributed]',
'#############[Attributed]',
'#############[Not Attributed]',
……
]
Calculate the percentage of [Attributed] occurrences that are context_recall.
Personal view:
About this library: does not support auzre access to openai, need to change the source code
On the four indicators
context_relevancy: doubtful (the effect of model stsb-TinyBERT-L-4 Chinese in agr_score to calculate similarity is uncertain)
context_recall: not sure which scenario to use for this one ......
Faithfulness.
answer_relevancy: probably reliable (depending on thetext-embedding-ada-002
(Precision of semantics after vectorization)