code: def _make_knowledge_base_tools(
      skill: db.Skills, openai_api_key: str, session_controller
  ) -> List:
      # To prevent dependency on Langchain unless an actual tool uses it.
      try:
          from langchain.agents import Tool
      except ImportError:
          raise ImportError(
              "To use the knowledge base skill, please install langchain with `pip install langchain`"
          )
      description = skill.params.get("description", "")
      all_tools = []
      all_tools.append(
          Tool(
              name="Knowledge Base Retrieval",
              func=_get_rag_query_function(
                  skill, openai_api_key, session_controller
              ),
              description=f"Use this tool to get more context or information to answer a question about {description}. The input should be the exact question the user is asking.",
          )
      )
      return all_tools
  
file_path: mindsdb/mindsdb/interfaces/skills/skill_tool.py
imports: from mindsdb.interfaces.storage import db
  from mindsdb.integrations.handlers.langchain_embedding_handler.langchain_embedding_handler import construct_model_from_args
  from mindsdb.integrations.handlers.langchain_handler.mindsdb_database_agent import MindsDBSQL
  from mindsdb.integrations.handlers.rag_handler.rag import RAGQuestionAnswerer
  from mindsdb.integrations.handlers.rag_handler.settings import OpenAIParameters, RAGHandlerParameters
  import os
  from typing import List
label_desc: Use image node_id 3 for calling a global function with example usage: _make_knowledge_base_tools(skill, openai_api_key, session_controller) and returns: all_tools