dsdanielpark/Bard-API
The unofficial python package that returns response of Google Bard through cookie value.
📦 Transition to <img src="https://www.gstatic.com/lamda/images/favicon_v1_150160cddff7f294ce30.svg" width="35px" alt="Gemini Icon" /> [Gemini API](https://github.com/dsdanielpark/Gemini-API)
- In February 2024, Bard has changed its service name to Gemini.
- For some countries/regions where the `__Secure-1PSID` cookie value ends with a single dot: [Bard API](https://github.com/dsdanielpark/Bard-API) >= 0.1.40
- For all other countries/regions: Starting from March 1st, please go to the [Gemini API](https://github.com/dsdanielpark/Gemini-API) package.
- Moving forward, updates will primarily focus on the Gemini API package.
- <br>
📦 Bard API - version 0.1.40
- ```
- $ pip install bardapi==0.1.40
- ```
- ```
- $ pip install -q -U bardapi
- ```
📋 What's Changed
- Fix endpoint url Bard to Gemini @dsdanielpark
- Fix misc by @jjkoh95 in https://github.com/dsdanielpark/Bard-API/pull/273
- Change bard urls to gemini in docs and core modules by @sudoAlireza in https://github.com/dsdanielpark/Bard-API/pull/278
📦 Bard API - version 0.1.39
- ```
- $ pip install bardapi==0.1.39
- ```
- ```
- $ pip install -q -U bardapi
- ```
📦 Release Note
- Add Google Contents: Change type hints for compatibility across various Python versions. by @dsdanielpark @veonua #210
- Add feature: Auto Rotating Cookies by @szv99 #249 #235 #191 - The following, however, requires further development to fully implement the functionality.
- Add ask in BardAsync: by @jjkoh95 #223
- Fix Async Bard: I have made modifications to the implementation of async Bard. Please refer to the code examples in the documentation. I have corrected some incorrect arguments and removed unnecessary processes such as translation to align it with async. However, further development is needed. by @dsdanielpark #253 #255
- Change cookie value assert to print: We have observed that in some countries, accounts, or regions, the cookie value does not end with a single dot. Thus, Instead of using assert, we are changing it to notify through print statements. by @dsdanielpark #261
- Fix dependencies and refactoring by @dsdanielpark
- You can check Google Official Service at #262
- ***
- + 4 more
📋 What's Changed
- Remove `proxies` argument for async client by @jjkoh95 in https://github.com/dsdanielpark/Bard-API/pull/201
- Add necessary import by @CBoYXD in https://github.com/dsdanielpark/Bard-API/pull/202
- GoogleWorkspaceContent and GoogleHotelContent by @veonua in https://github.com/dsdanielpark/Bard-API/pull/210
- Add `ask` method for `AsyncBard` by @jjkoh95 in https://github.com/dsdanielpark/Bard-API/pull/223
- Automatically update rotating cookie by @szv99 in https://github.com/dsdanielpark/Bard-API/pull/235
✨ New Contributors
- @jjkoh95 made their first contribution in https://github.com/dsdanielpark/Bard-API/pull/201
- @szv99 made their first contribution in https://github.com/dsdanielpark/Bard-API/pull/235
- Full Changelog: https://github.com/dsdanielpark/Bard-API/compare/0.1.38...0.1.39
📦 0.1.38
- ```
- $ pip install bardapi==0.1.38
- ```
- ```
- $ pip install -q -U bardapi
- ```
- In order to prevent confusion in the future, Pull Requests will be rejected if refactoring and contributions are not thoroughly QA-tested.
- Furthermore, strict rules will be applied regarding additional package imports.
- + 8 more
📦 0.1.37
- Contributor: [dsdanielpark](https://github.com/dsdanielpark)
- PR index: None
- Issue index: #198
- Build Git Hash: 222a519190c1e9f777f71c04f63c976b69f3fbe8
- During the optimization and refactoring process, I identified formatting and import errors. These issues have been addressed through QA to prevent recurrence.
📦 0.1.36
- Contributor: [dsdanielpark](https://github.com/dsdanielpark)
- PR index: None
- Issue index: #198
- Build Git Hash: 1714a73c2acfe515d1411e27b78a6fbc9d126719
- During the optimization and refactoring process, I identified formatting and import errors. These issues have been addressed through QA to prevent recurrence.
📦 0.1.35
- ```
- $ pip install bardapi==0.1.35
- ```
- ```
- $ pip install -U bardapi
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Google's policy change has led to an increased need for multiple cookie values from users. Some code streamlining is required.
- + 5 more
📦 0.1.34
- ```
- $ pip install bardapi==0.1.34
- ```
- ```
- $ pip install -q -U bardapi
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Google's policy change has led to an increased need for multiple cookie values from users. Some code streamlining is required.
- + 8 more
📦 0.1.33
- ```
- $ pip install bardapi==0.1.33
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Google's policy change has led to an increased need for multiple cookie values from users. Some code streamlining is required.
- Contributor: [dsdanielpark](https://github.com/dsdanielpark)
- PR index: None
- Build Git Hash: 7a4da93b11bbb9656b577ee1b238e39cc9422d4b
- + 3 more
📦 0.1.32
- ```
- $ pip install bardapi==0.1.32
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributors: [CBoYXD](https://github.com/CBoYXD), [dsdanielpark](https://github.com/dsdanielpark)
- PR indexies:
- Build Git Hash: 0c43df8ae24648989926a1fa13179b4b674ae3a6
- Refactoring has been carried out for certain features.
- + 5 more
📦 0.1.31
- ```
- $ pip install bardapi==0.1.31
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributors: [CBoYXD](https://github.com/CBoYXD), [lywchaos](https://github.com/lywchaos), [dsdanielpark](https://github.com/dsdanielpark)
- PR indexies: #151, #152, #153, #154, #157
- Build Git Hash: a4b1c7d0718af5663c64ea227b5ba07ec473ca16
- Corrected some docstring typos and code formatting. #153
- + 5 more
📦 0.1.30
- ```
- $ pip install bardapi==0.1.30
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributors: [yihong0618](https://github.com/yihong0618), [CBoYXD](https://github.com/CBoYXD), [dsdanielpark](https://github.com/dsdanielpark)
- PR Index: #137, #140, #148
- Build Git Hash: fb3845f04a590ffcddc19e0e762969ee81c497e9
- Add `BardAsync.ask_about_image` method #137
- + 2 more
📦 0.1.29
- ```
- $ pip install bardapi==0.1.29
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributor: [sachnun](https://github.com/sachnun), [dsdanielpark](https://github.com/dsdanielpark)
- PR Index: #132
- Build Git Hash: a1a35683ea3ca13110bf4412e0558fe5967962bd
- [Export code to Repl.it ](https://github.com/dsdanielpark/Bard-API/blob/main/README_DEV.md#export-code-to-replit) - Exporting the code directly from Bard to Repl.it makes the coding process more convenient
📦 0.1.28
- ```
- $ pip install bardapi==0.1.28
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributor: [senseibence](https://github.com/senseibence), [yihong0618](https://github.com/yihong0618), [dsdanielpark](https://github.com/dsdanielpark)
- PR Index: #121 #125 #130
- Build Git Hash: 1284b5c6ac6afc7efccff632f1f6c72f1d348b9c
- Forced header to "start" to allow multiple image uploads to URL #121
- + 2 more
📦 0.1.27
- ```
- $ pip install bardapi==0.1.27
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributor: [thewh1teagle](https://github.com/thewh1teagle) , [dsdanielpark](https://github.com/dsdanielpark)
- Build Git Hash: b04e2010b99eaf39a13ed01de4c101084e76b3c3
- [Ask About Image](https://github.com/dsdanielpark/Bard-API#bard-ask_about_image-method) #111
- Thank you in advance for your contribution.
- + 1 more
📦 0.1.26
- ```
- $ pip install bardapi==0.1.26
- ```
- *It may not work as it is only available for certain accounts, regions, and other restrictions.*
- Contributors: [thewh1teagle](https://github.com/thewh1teagle) , [dsdanielpark](https://github.com/dsdanielpark)
- Build Git Hash: 8ac8330049d172f7cdf74460f8e96a275f88f947
- [Auto Cookie Bard](https://github.com/dsdanielpark/Bard-API/blob/main/README_DEV.md#auto-cookie-bard) #106
- [Export Conversation](https://github.com/dsdanielpark/Bard-API/blob/main/README_DEV.md#export-conversation) #105
- + 2 more
📦 0.1.25
- Added a method to read text from Bard. Thanks to the contribution from [thewh1teagle](https://github.com/thewh1teagle) #105.
📦 Version 0.1.24
- If you want to utilize various features, please use version `0.1.24`.
- Version `0.1.24` is the same version as `0.1.22`, `0.1.23`, and `0.1.24`, taken as a measure to prevent the alpha release from being the latest distribution on PyPI.
- ```
- pip install bardapi==0.1.24
- ```
- <br><br>
📦 Version 0.1.23a
- ```
- pip install bardapi==0.1.23a
- ```
- You can check out the alpha release through the following GitHub branch.
- `alapha-relase` github brach: https://github.com/dsdanielpark/Bard-API/tree/alpha-release
📦 Version 0.1.23a
- ```
- pip install bardapi==0.1.23a
- ```
- You can check out the alpha release through the following GitHub branch.
- `alapha-relase` github brach: https://github.com/dsdanielpark/Bard-API/tree/alpha-release
- <br><br>
📦 Version 0.1.24
- If you want to utilize various features, please use version `0.1.24`.
- Version `0.1.24` is the same version as `0.1.22`, `0.1.23`, and `0.1.24`, taken as a measure to prevent the alpha release from being the latest distribution on PyPI.
- ```
- pip install bardapi==0.1.24
- ```
📦 0.1.22
- Fixed printing errors in the ChatBard class.
- Made some modifications to docstrings and others.
📦 0.1.21
- Added missing docstrings due to the addition of new features.
- Implemented try-except with error suppression in code for additional functionalities like images.
- Made several improvements to existing features.
- If you would like to become the main maintainer of the Bard API, please open a discussion page.
📦 0.1.20
- Some errors in ChatBard have been fixed. However, it is recommended not to pass the value of the token through input.
📦 0.1.19
- Modify translation-related code to accommodate changes in the Google API interface. you can use the `language` argument.
- Additionally, official usage of Google Cloud Translation API is available. For commercial use and others, please make sure to use `google_translator_api_key` to access the official translation API.
📦 Bard-API 0.1.18
- Due to changes in the Google interface, a bug has been fixed in the temporary release of version 0.1.18.
- We are preparing for the release of version 0.1.19, which will include checks for the remaining features.
- Additionally, starting from version `0.1.18`, the `GitHub version of BardAPI` will be synchronized with the `PyPI version` and released simultaneously.
- <br><br><br><br><br><br>
📋 Notice: the internal API interface of Google has changed. #78
- ```
- TypeError: 'NoneType' object is not subscriptable
- File "C:\Users\Hemanth\AppData\Local\Programs\Python\Python311\Lib\site-packages\bardapi\core.py", line 119, in get_answer
- "content": parsed_answer[0][0]
- ```
📦 Solution
- Using version over `0.1.18`
- ```
- pip install bardapi>=0.1.18
- ```
📦 0.1.17
- Add `conversation_id` as argument of Bard class <br><br>
- 1. [reusable-session-object](https://github.com/dsdanielpark/Bard-API#reusable-session-object)
- When using the `reusable session` as an argument in the Bard class, Bard can remember your previous prompts.
- 2. [fix-conversation-id-fix-context](https://github.com/dsdanielpark/Bard-API/blob/main/README_DEV.md#fix-conversation-id-fix-context)
- When using the `reusable session` and `conversation_id` as arguments in the Bard class, Bard not only remembers your previous prompts but can also provide consistent responses.
To directly execute the Python code received from Bard, set the `run_code` argument of Bard class to `True`. Thank you for sharing a valuable use case by R. Navarro.
📋 Changes
- I have modified the code to allow passing arguments to ChatBard in version `0.1.15`.
- This enables creating ChatBard objects more explicitly.
During the process of handling images, certain conditional statements have been strengthened to resolve errors. Additionally, versioning issues have been corrected for versions `0.1.11multilang`, `0.1.11multilang2`, `0.1.12`, and `0.1.13`, where they were incorrectly labeled as version `0.1.11`. To address this, version `0.1.14` is being released. Version `0.1.14`, which is distributed via PyPI, includes the following additions to the `0.1.11` version: 1. You can interact with Bard using the 'language' parameter, allowing you to converse with Bard using Google Translate. 2. You can receive links that are searched by Bard. The response dictionary of Bard will have an additional key called 'links'. 3. For images provided by Bard, you can now check them sequentially using the 'images' key. 4. The ChatBard class has been added, allowing for easy communication through simple configuration settings.
📦 ChatBard
- ```python
- from bardapi import ChatBard
- chat = ChatBard()
- chat.start()
- ```
- or
- ```python
- from bardapi import ChatBard
- + 7 more
📋 Changes
- The stable version is still 0.1.11, provided that the language argument, links, and images are not included in the returned dictionary.
- Introduce a language factor to Bard, enabling translation using Google Translate.
- Include links and images received from Bard in the returned dictionary.
Resolved unspecified language error of `0.1.11-multilang`. To include the GitHub developer version as a dependency package, please use the following tag: ```arduino bardapi @ git+https://github.com/dsdanielpark/Bard-API.git@0.1.11-multilang2 ``` Note that the PyPI version of bardapi does not include the language argument. However, a better approach is to integrate a separate translation model into the pipeline.
