Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(Google): Support all Text/Chat Models, Server Response streaming, PaLM -> Google 🤖 #1316

Merged
merged 26 commits into from
Dec 10, 2023

Conversation

danny-avila
Copy link
Owner

@danny-avila danny-avila commented Dec 9, 2023

Summary

I've significantly improved the Google endpoint (previously known as PaLM) integration in preparation for the upcoming Gemini release. Changes include the use of a default settings map, full support for context in both text and chat models, and comprehensive support for examples in chat models. Additionally, I've updated documentation, fixed typos, and made numerous refactoring changes to enhance the functionality and clarity of the codebase.

Change Type

  • New feature (non-breaking change which adds functionality)
  • Documentation update
  • Bug fix (non-breaking change which fixes an issue)
  • Refactor

Testing

To ensure the robustness of these changes, I've tested the new Google endpoint functionalities, particularly around providing context and using examples in chat models. I've also verified that the documentation updates are accurate and readable. Further testing should include:

  • Verifying that the default settings map is correctly applied.
  • Testing the full support for context in both text and chat models to ensure consistency.
  • Checking the examples feature in chat models for expected behavior.
  • Reviewing all refactored components to ensure they are functioning as intended after the changes.

Test Configuration:

  • Ensure the Google API integration is set up according to the updated documentation.
  • Utilize different text and chat models to test the new prompt-building and streaming functionalities.
  • Test with a variety of input examples to confirm the models respond correctly.

Checklist

  • My code adheres to this project's style guidelines
  • I have performed a self-review of my own code
  • I have commented in any complex areas of my code
  • I have made pertinent documentation changes
  • My changes do not introduce new warnings
  • I have written tests demonstrating that my changes are effective or that my feature works
  • Local unit tests pass with my changes

@danny-avila danny-avila changed the title feat: Google updates feat(Google): Support all Foundation Models, Server Response streaming, rename PaLM to Google Dec 9, 2023
@danny-avila danny-avila changed the title feat(Google): Support all Foundation Models, Server Response streaming, rename PaLM to Google feat(Google): Support all Text LLMs, Server Response streaming, rename PaLM to Google Dec 9, 2023
…h text and chat models, fully support examples for chat models
@danny-avila danny-avila changed the title feat(Google): Support all Text LLMs, Server Response streaming, rename PaLM to Google feat(Google): Support all Text/Chat Models, Server Response streaming, PaLM -> Google 🤖 Dec 10, 2023
@danny-avila danny-avila merged commit 583e978 into main Dec 10, 2023
3 checks passed
@danny-avila danny-avila deleted the google-updates branch December 10, 2023 19:54
shortpoet pushed a commit to shortpoet/LibreChat that referenced this pull request Dec 30, 2023
…` -> `Google` 🤖 (danny-avila#1316)

* feat: update PaLM icons

* feat: add additional google models

* POC: formatting inputs for Vertex AI streaming

* refactor: move endpoints services outside of /routes dir to /services/Endpoints

* refactor: shorten schemas import

* refactor: rename PALM to GOOGLE

* feat: make Google editable endpoint

* feat: reusable Ask and Edit controllers based off Anthropic

* chore: organize imports/logic

* fix(parseConvo): include examples in googleSchema

* fix: google only allows odd number of messages to be sent

* fix: pass proxy to AnthropicClient

* refactor: change `google` altName to `Google`

* refactor: update getModelMaxTokens and related functions to handle maxTokensMap with nested endpoint model key/values

* refactor: google Icon and response sender changes (Codey and Google logo instead of PaLM in all cases)

* feat: google support for maxTokensMap

* feat: google updated endpoints with Ask/Edit controllers, buildOptions, and initializeClient

* feat(GoogleClient): now builds prompt for text models and supports real streaming from Vertex AI through langchain

* chore(GoogleClient): remove comments, left before for reference in git history

* docs: update google instructions (WIP)

* docs(apis_and_tokens.md): add images to google instructions

* docs: remove typo apis_and_tokens.md

* Update apis_and_tokens.md

* feat(Google): use default settings map, fully support context for both text and chat models, fully support examples for chat models

* chore: update more PaLM references to Google

* chore: move playwright out of workflows to avoid failing tests
cnkang pushed a commit to cnkang/LibreChat that referenced this pull request Feb 6, 2024
…` -> `Google` 🤖 (danny-avila#1316)

* feat: update PaLM icons

* feat: add additional google models

* POC: formatting inputs for Vertex AI streaming

* refactor: move endpoints services outside of /routes dir to /services/Endpoints

* refactor: shorten schemas import

* refactor: rename PALM to GOOGLE

* feat: make Google editable endpoint

* feat: reusable Ask and Edit controllers based off Anthropic

* chore: organize imports/logic

* fix(parseConvo): include examples in googleSchema

* fix: google only allows odd number of messages to be sent

* fix: pass proxy to AnthropicClient

* refactor: change `google` altName to `Google`

* refactor: update getModelMaxTokens and related functions to handle maxTokensMap with nested endpoint model key/values

* refactor: google Icon and response sender changes (Codey and Google logo instead of PaLM in all cases)

* feat: google support for maxTokensMap

* feat: google updated endpoints with Ask/Edit controllers, buildOptions, and initializeClient

* feat(GoogleClient): now builds prompt for text models and supports real streaming from Vertex AI through langchain

* chore(GoogleClient): remove comments, left before for reference in git history

* docs: update google instructions (WIP)

* docs(apis_and_tokens.md): add images to google instructions

* docs: remove typo apis_and_tokens.md

* Update apis_and_tokens.md

* feat(Google): use default settings map, fully support context for both text and chat models, fully support examples for chat models

* chore: update more PaLM references to Google

* chore: move playwright out of workflows to avoid failing tests
jinzishuai pushed a commit to aitok-ai/LibreChat that referenced this pull request May 20, 2024
…` -> `Google` 🤖 (danny-avila#1316)

* feat: update PaLM icons

* feat: add additional google models

* POC: formatting inputs for Vertex AI streaming

* refactor: move endpoints services outside of /routes dir to /services/Endpoints

* refactor: shorten schemas import

* refactor: rename PALM to GOOGLE

* feat: make Google editable endpoint

* feat: reusable Ask and Edit controllers based off Anthropic

* chore: organize imports/logic

* fix(parseConvo): include examples in googleSchema

* fix: google only allows odd number of messages to be sent

* fix: pass proxy to AnthropicClient

* refactor: change `google` altName to `Google`

* refactor: update getModelMaxTokens and related functions to handle maxTokensMap with nested endpoint model key/values

* refactor: google Icon and response sender changes (Codey and Google logo instead of PaLM in all cases)

* feat: google support for maxTokensMap

* feat: google updated endpoints with Ask/Edit controllers, buildOptions, and initializeClient

* feat(GoogleClient): now builds prompt for text models and supports real streaming from Vertex AI through langchain

* chore(GoogleClient): remove comments, left before for reference in git history

* docs: update google instructions (WIP)

* docs(apis_and_tokens.md): add images to google instructions

* docs: remove typo apis_and_tokens.md

* Update apis_and_tokens.md

* feat(Google): use default settings map, fully support context for both text and chat models, fully support examples for chat models

* chore: update more PaLM references to Google

* chore: move playwright out of workflows to avoid failing tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant