Skip to content

TypeError: object of type 'NoneType' has no len() #971

@suke1-tal

Description

@suke1-tal

Describe the bug
When entering empty training data like ”[None, 'databack_ods_dev.xxxxx_interface 这张表存储了线上平台所有接口的元数据']“ and using Vanna to input SQL commands, an error will be reported

To Reproduce
Steps to reproduce the behavior:

  1. Empty training data that I don't know how to input

Error logs/Screenshots
Traceback (most recent call last):
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 1536, in call
return self.wsgi_app(environ, start_response)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 1514, in wsgi_app
response = self.handle_exception(e)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 1511, in wsgi_app
response = self.full_dispatch_request()
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 919, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 917, in full_dispatch_request
rv = self.dispatch_request()
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/flask/app.py", line 902, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/flask/init.py", line 138, in decorated
return f(*args, user=user, **kwargs)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/flask/init.py", line 335, in generate_sql
sql = vn.generate_sql(question=question, allow_llm_to_see_data=self.allow_llm_to_see_data)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/base/base.py", line 127, in generate_sql
prompt = self.get_sql_prompt(
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/base/base.py", line 614, in get_sql_prompt
initial_prompt = self.add_documentation_to_prompt(
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/base/base.py", line 547, in add_documentation_to_prompt
+ self.str_to_approx_token_count(documentation)
File "/root/soft/anaconda3/envs/vanna/lib/python3.10/site-packages/vanna/base/base.py", line 516, in str_to_approx_token_count
return len(string) / 4
TypeError: object of type 'NoneType' has no len()

Desktop (please complete the following information where):

  • OS: macos 14.6.1
  • Python: [3.10]
  • Vanna: [0.7.9]

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions