ontogpt icon indicating copy to clipboard operation
ontogpt copied to clipboard

Transient errors with Translator endpoint

Open caufieldjh opened this issue 1 month ago • 1 comments

Haven't been able to reproduce this consistently, but attempts to ground using the Translator endpoint (though OAK) will sometimes fail in an uncontrolled way. Stack trace c/o @enockniyonkuru

Traceback (most recent call last):
  File "/Users/niyone/Desktop/maxo/automaxo/main.py", line 54, in <module>
    main()
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/Users/niyone/Desktop/maxo/automaxo/main.py", line 51, in main
    runner.run()
  File "/Users/niyone/Desktop/maxo/automaxo/main.py", line 27, in run
    process_ontogpt_articles(self.no_replaced_tsv_file_path, self.ontogpt_yaml_files_dir, template='maxo')
  File "/Users/niyone/Desktop/maxo/automaxo/src/automaxo/ontogpt_article_processor.py", line 106, in run_in_notebook
    main.main(standalone_mode=False, args=[
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/Users/niyone/Desktop/maxo/automaxo/src/automaxo/ontogpt_article_processor.py", line 103, in main
    process_tsv_file(input_file, ke, output_dir,existing_pmids, template )
  File "/Users/niyone/Desktop/maxo/automaxo/src/automaxo/ontogpt_article_processor.py", line 73, in process_tsv_file
    process_article(pubmed_id, text, ke, output_dir,template )
  File "/Users/niyone/Desktop/maxo/automaxo/src/automaxo/ontogpt_article_processor.py", line 32, in process_article
    results = ke.extract_from_text(text=text)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/spires_engine.py", line 95, in extract_from_text
    extracted_object = self.parse_completion_payload(
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/spires_engine.py", line 558, in parse_completion_payload
    return self.ground_annotation_object(raw, cls)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/spires_engine.py", line 628, in ground_annotation_object
    obj = self.ground_annotation_object(val, rng_cls)
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/spires_engine.py", line 630, in ground_annotation_object
    obj = self.normalize_named_entity(val, slot.range)  # type: ignore
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/knowledge_engine.py", line 348, in normalize_named_entity
    for normalized_id in self.normalize_identifier(obj_id, cls):
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/knowledge_engine.py", line 412, in normalize_identifier
    for obj_id in self.map_identifier(input_id, cls):
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/ontogpt/engines/knowledge_engine.py", line 446, in map_identifier
    for mapping in mapper.sssom_mappings([input_id]):
  File "/Users/niyone/Desktop/maxo/automaxo/.venv/lib/python3.9/site-packages/oaklib/implementations/translator/translator_implementation.py", line 83, in sssom_mappings
    equiv_identifiers = data.get("equivalent_identifiers", [])
AttributeError: 'str' object has no attribute 'get'

caufieldjh avatar May 07 '24 00:05 caufieldjh