LHRLAB / ChatKBQA

[ACL 2024] Official resources of "ChatKBQA: A Generate-then-Retrieve Framework for Knowledge Base Question Answering with Fine-tuned Large Language Models".
https://doi.org/10.18653/v1/2024.findings-acl.122
MIT License
272 stars 23 forks source link

Bug when running the retrieval code #16

Closed quqxui closed 4 months ago

quqxui commented 5 months ago

I encountered a bug while running the retrieval code. Can you provide any suggestions on how to resolve this issue?

CUDA_VISIBLE_DEVICES=7 python -u eval_final.py --dataset WebQSP --pred_file Reading/LLaMA2-7b/WebQSP_Freebase_NQ_lora_epoch100/evaluation_beam/beam_test_top_k_predictions.json
INFO:simcse.tool:Use `cls_before_pooler` for unsupervised models. If you want to use other pooling policy, specify `pooler` argument.
split:test, topk_file:Reading/LLaMA2-7b/WebQSP_Freebase_NQ_lora_epoch100/evaluation_beam/beam_test_top_k_predictions.json
Reading/LLaMA2-7b/WebQSP_Freebase_NQ_lora_epoch100/evaluation_beam
INFO:entity_retrieval.surface_index_memory:Loading entity vocabulary from disk.
INFO:entity_retrieval.surface_index_memory:Loading surfaces from disk.
INFO:entity_retrieval.surface_index_memory:Done initializing surface index.
Evaluating test:   0%|                                                                                                                                                                             | 0/1639 [00:00<?, ?it/s]( join ( r [ location , country , languages spoken ] ) [ jamaica ] )
(join (r location.country.languages_spoken) m.03_r3)
(join (r location.country.languages_spoken) m.03_r3)
  0%|                                                                                                                                                                                                 | 0/6 [00:00<?, ?it/s]
Evaluating test:   0%|                                                                                                                                                                             | 0/1639 [00:00<?, ?it/s]
Traceback (most recent call last):
  File "eval_final.py", line 586, in <module>
    aggressive_top_k_eval_new(args.split, args.pred_file, args.dataset)
  File "eval_final.py", line 477, in aggressive_top_k_eval_new
    lf, answers = execute_normed_s_expr_from_label_maps_rel(
  File "eval_final.py", line 288, in execute_normed_s_expr_from_label_maps_rel
    query_expr, denotation = try_relation(d)
  File "eval_final.py", line 310, in try_relation
    in_rels, out_rels, _ = get_2hop_relations_with_odbc_wo_filter(ent)
  File "/data/zihengzhang/derongxu/ideas/ChatKBQA/executor/sparql_executor.py", line 527, in get_2hop_relations_with_odbc_wo_filter
    initialize_odbc_connection()
  File "/data/zihengzhang/derongxu/ideas/ChatKBQA/executor/sparql_executor.py", line 27, in initialize_odbc_connection
    odbc_conn = pyodbc.connect(
pyodbc.InterfaceError: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')