conversation api - refactor langchaingo common models
Description
This is a refactor to put common langchaingo-based models to use a simple base struct that is embedded on each. This is part of adding other functionality like streaming and tool-calling that will benefit from a single point of change for all the models that use langchaingo as its base.
Along the way we updated the langchaingo version to deal with an error while testing Mistral. We also found out that HuggingFace is not properly been executed in langchaingo and there is no fix. In the tests we used OpenAI compatibility with huggingface API URL but we might need to change huggingface to either use openai by default and/or fix langchaingo.
There are no conformance tests for conversation API, so I added a temporary test inside the conversation folder
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #[issue number]
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:
- [ ] Code compiles correctly
- [ ] Created/updated tests
- [ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]