imperialwarrior/australia-legal-qa-dataset-and-embeddings
收藏数据卡:增强型澳大利亚法律QA数据集与嵌入
数据集描述
该数据集是Open Australian Legal QA dataset和Open Australian Legal QA Paraphrased Questions数据集的前置数据集,增加了检索和非检索嵌入。它旨在促进法律问答和信息检索中的高级NLP应用,利用Angle Embeddings创建语义丰富的向量表示。
数据集结构和列类型
主数据集csv包含10,620条记录,具有以下列:
question:改写的法律问题(字符串)。answer:问题的答案(字符串)。text:额外的上下文信息或详细信息(字符串)。prompt:用于生成或改写内容的提示(字符串)。source:关于源文档的元数据,包括引用和管辖权(字符串)。- 嵌入列,每个包含一个4096维的1D列表:
question_non_retrieval_embeddingsanswer_retrieval_embeddingsanswer_non_retrieval_embeddingsquestion_retrieval_embeddingstext_non_retrieval_embeddingstext_retrieval_embeddings
这些嵌入旨在支持从内容检索到深度语义分析的一系列NLP任务。
加载主数据集CSV
python import pandas as pd
加载数据集
df = pd.read_csv(main.csv)
print(df.head())
此代码片段演示了如何从CSV文件加载数据框。
加载嵌入资产并映射到数据框
python import json from tqdm import tqdm
将JSON文件加载到内存中
json_files = [ question_nr_embeddings.json, answer_r_embeddings.json, answer_nr_embeddings.json, question_r_embeddings.json, passage_nr_embeddings.json, passage_r_embeddings.json ]
embeddings = {} for file_name in tqdm(json_files): with open(fassets/{file_name}, r) as file: embeddings[file_name] = json.load(file)
定义从嵌入文件名到数据框列的映射
file_to_column_mapping = { question_nr_embeddings.json: (question, non_retrieval), answer_r_embeddings.json: (answer, retrieval), answer_nr_embeddings.json: (answer, non_retrieval), question_r_embeddings.json: (question, retrieval), passage_nr_embeddings.json: (text, non_retrieval), passage_r_embeddings.json: (text, retrieval), }
for file_name, (column_name, retrieval_type) in tqdm(file_to_column_mapping.items()): # 加载JSON文件 with open(fassets/{file_name}, r) as file: embeddings = json.load(file)
# 根据文件的用途和检索类型定义新列名
new_column_name = f"{column_name}_{retrieval_type}_embeddings"
# 将嵌入分配到新列
df[new_column_name] = df[column_name].apply(lambda x: embeddings.get(x, None))
此过程演示了如何将存储为JSON文件的嵌入向量加载并根据内容的性质和检索类型映射到数据框中的适当列,以便于操作和分析。



