Repository: truera/trulens
Issue: [BUG] UnicodeDecodeError: 'gbk' codec can't decode
Root cause: Validation Gap

**Bug Description**
What happened?

```
Exception in thread Thread-3 (_future_target_wrapper):
Traceback (most recent call last):
  File "D:\Development\Tools\Miniconda3\envs\reasoning\Lib\threading.py", line 1045, in _bootstrap_inner
    self.run()
  File "D:\Development\Tools\Miniconda3\envs\reasoning\Lib\threading.py", line 982, in run
    self._target(*self._args, **self._kwargs)
  File "D:\Development\Tools\Miniconda3\envs\reasoning\Lib\site-packages\trulens_eval\utils\python.py", line 386, in _future_target_wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "D:\Development\Tools\Miniconda3\envs\reasoning\Lib\site-packages\trulens_eval\tru.py", line 1043, in listen_to_dashboard
    line = pipe.readline()
           ^^^^^^^^^^^^^^^
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 2: illegal multibyte sequence
Tru was already initialized. Cannot change database_url=sqlite:///default.sqlite or database_file=None .
```

**To Reproduce**
Which steps should someone take to run into the same error? A small, reproducible code example is useful here.

**Expected behavior**
A clear and concise description of what you expected to happen.

**Relevant Logs/Tracebacks**
Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. If the issue is related to the TruLens dashboard, please also include a screenshot.

**Environment:**
 - OS: [e.g. MacOS, Windows]
 - Python Version
 - TruLens version
 - Versions of other relevant installed libraries

**Additional context**
Add any other context about the problem here.


<!-- Greeting -->
Hey there, @liuxiaocs7! Great to see you diving into the depths of TruLens again. Looks like you've hit a bit of a snag this time, huh? Let's see what we can do about it.

<!-- Answer -->
Based on the traceback you provided, it seems like the issue is related to the encoding used when reading from the `pipe` object in the `listen_to_dashboard` function. The `pipe` object is reading the standard output (`stdout`) and standard error (`stderr`) of the subprocess that runs the Streamlit dashboard. The error message `UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 2: illegal multibyte sequence` suggests that the `readline()` function is trying to decode the output using the 'gbk' codec, but it's encountering a byte sequence it can't decode.

This could be due to the fact that the output of the subprocess contains non-ASCII characters that can't be decoded using the 'gbk' codec. One possible solution could be to specify a different encoding when creating the subprocess, such as 'utf-8', which can handle a wider range of characters.

However, without more information, it's hard to say for sure what the best solution would be. Could you please provide more details about your environment, such as the OS, Python version, TruLens version, and versions of other relevant installed libraries? Also, could you provide the steps to reproduce the error and describe what you expected to happen? This information will help me better understand the issue and provide a more accurate solution.

For more information about the `listen_to_dashboard` function and the `pipe` object, you can refer to the [TruLens source code](https://github.com/truera/trulens/blob/main/trulens_eval/trulens_eval/tru.py).

## Sources
- [trulens_eval/trulens_eval/tru.py](https://github.com/truera/trulens/blob/main/trulens_eval/trulens_eval/tru.py)

<!-- Dosu Comment Footer -->
<details open>
<summary>

#### About Dosu
</summary>

This response is meant to be useful and save you time. It is **not meant to be a precise solution**, but rather a starting point for your own research.

Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.

If you want to continue the conversation, start your reply with @dosu-bot.
</details>

@liuxiaocs7 please complete the bug description so we can properly diagnose the is issue. Thanks!

Not enough information here to reproduce/solve. Closing until more information is provided