The class AbstractOpenAiCompatibleTextGenerationModel is currently used as a base for Anthropic, Google, and OpenAI LLM implementations. This naming convention is confusing because it suggests compatibility only with OpenAI, while it is actually used for multiple providers.
Problem:
- The same class name is used for Anthropic, Google, and OpenAI LLMs.
- Developers may assume the class is only for OpenAI, leading to misunderstandings and maintenance issues.
Proposed Solution:
- Use distinct class names for each provider (e.g., AbstractOpenAiTextGenerationModel,AbstractAnthropicTextGenerationModel,AbstractGoogleTextGenerationModel).
- Refactor the codebase to ensure each LLM provider has a clearly named base class.
Benefit:
- Reduces confusion for contributors and maintainers.
- Improves code clarity and maintainability.
Please discuss and prioritize this refactor to avoid future confusion.