أداة الذكاء الاصطناعى للاستعلام عن اللغة الطبيعية على البيانات الجدولية. بناء باستخدام نماذج ضمان الجودة من المحولات.
هذا العمل موصوف في الورقة التالية:
Tablequery: الاستعلام عن بيانات جدولة باللغة الطبيعية ، بقلم أبهيجيث نيل أبراهام ، فاريز الرحمن ودامانبريت كور.
إذا كنت تستخدم TableQa ، يرجى الاستشهاد بالورقة.
فيما يلي مدونة مفصلة لفهم كيفية عمل هذا.
يمكن أن تكون البيانات الجدولية:
.
.
pip install tableqa
git clone https://github.com/abhijithneilabraham/tableQA
cd tableqa
python setup.py install
from tableqa.agent import Agent
agent=Agent(df) #input your dataframe
response=agent.query_db("Your question here")
print(response)
sql=agent.get_query("Your question here")
print(sql) #returns an sql query
{
"name": DATABASE NAME,
"keywords":[DATABASE KEYWORDS],
"columns":
[
{
"name": COLUMN 1 NAME,
"mapping":{
CATEGORY 1: [CATEGORY 1 KEYWORDS],
CATEGORY 2: [CATEGORY 2 KEYWORDS]
}
},
{
"name": COLUMN 2 NAME,
"keywords": [COLUMN 2 KEYWORDS]
},
{
"name": "COLUMN 3 NAME",
"keywords": [COLUMN 3 KEYWORDS],
"summable":"True"
}
]
}
summable لأعمدة النوع الرقمي التي تكون قيمها بالفعل تمثيلات العد. على سبيل المثال. Death Count,Cases وما إلى ذلك يتكون من القيم التي تمثل بالفعل عدد.مثال (مع المخطط اليدوي):
from tableqa.agent import Agent
agent=Agent(df,schema) #pass the dataframe and schema objects
response=agent.query_db("how many people died of stomach cancer in 2011")
print(response)
#Response =[(22,)]
from tableqa.agent import Agent
agent = Agent(df, schema_file, 'postgres', username='username', password='password', database='DBname', host='localhost', port=5432, aws_db=False)
response=agent.query_db("how many people died of stomach cancer in 2011")
print(response)
#Response =[(22,)]
from tableqa.agent import Agent
agent = Agent(df, schema_file, 'mysql', username='username', password='password', database='DBname', host='localhost', port=5432, aws_db=False)
response=agent.query_db("how many people died of stomach cancer in 2011")
print(response)
#Response =[(22,)]
ارجع إلى الخطوة 1 في المستند لإنشاء مثيل MySQL DB على Amazon RDS. يمكن اتباع نفس الخطوات لإنشاء مثيل PostgreSQL DB عن طريق تحديد postgresql في علامة تبويب المحرك. الحصول على اسم المستخدم وكلمة المرور وقاعدة البيانات ونقطة النهاية والمنفذ من تفاصيل اتصال قاعدة البيانات الخاصة بك على Amazon RDS.
from tableqa.agent import Agent
agent = Agent(df, schema_file, 'postgres', username='Master username', password='Master password', database='DB name', host='Endpoint', port='Port', aws_db=True)
response=agent.query_db("how many people died of stomach cancer in 2011")
print(response)
#Response =[(22,)]
sql=agent.get_query("How many people died of stomach cancer in 2011")
print(sql)
#sql query: SELECT SUM(Death_Count) FROM cancer_death WHERE Cancer_site = "Stomach" AND Year = "2011"
csv_path="/content/tableQA/tableqa/cleaned_data"
schema_path="/content/tableQA/tableqa/schema"
agent=Agent(csv_path,schema_path)
csv_path="s3://{bucket}/cleaned_data"
schema_path="s3://{bucket}/schema"
agent = Agent(csv_path, schema_path, aws_s3=True, access_key_id=access_key_id, secret_access_key=secret_access_key)
انضم إلى مساحة عملنا: الركود