eval: Add support for reading from a .env
file (#29426)
This PR adds support for the eval to read environment variables from a `.env` file located in the `crates/eval` directory. For instance, you can use it to set your Anthropic API key: ``` ANTHROPIC_API_KEY=<secret> ``` Release Notes: - N/A
This commit is contained in:
parent
4f9cadabf7
commit
a5405fcbd7
6 changed files with 18 additions and 1 deletions
|
@ -19,6 +19,7 @@ client.workspace = true
|
|||
collections.workspace = true
|
||||
context_server.workspace = true
|
||||
dirs = "5.0"
|
||||
dotenv.workspace = true
|
||||
env_logger.workspace = true
|
||||
extension.workspace = true
|
||||
fs.workspace = true
|
||||
|
|
|
@ -6,6 +6,8 @@ This eval assumes the working directory is the root of the repository. Run it wi
|
|||
cargo run -p eval
|
||||
```
|
||||
|
||||
The eval will optionally read a `.env` file in `crates/eval` if you need it to set environment variables, such as API keys.
|
||||
|
||||
## Explorer Tool
|
||||
|
||||
The explorer tool generates a self-contained HTML view from one or more thread
|
||||
|
|
|
@ -34,9 +34,12 @@ use std::collections::VecDeque;
|
|||
use std::env;
|
||||
use std::path::{Path, PathBuf};
|
||||
use std::rc::Rc;
|
||||
use std::sync::Arc;
|
||||
use std::sync::{Arc, LazyLock};
|
||||
use util::ResultExt as _;
|
||||
|
||||
static CARGO_MANIFEST_DIR: LazyLock<PathBuf> =
|
||||
LazyLock::new(|| PathBuf::from(env!("CARGO_MANIFEST_DIR")));
|
||||
|
||||
#[derive(Parser, Debug)]
|
||||
#[command(name = "eval", disable_version_flag = true)]
|
||||
struct Args {
|
||||
|
@ -57,6 +60,8 @@ struct Args {
|
|||
}
|
||||
|
||||
fn main() {
|
||||
dotenv::from_filename(CARGO_MANIFEST_DIR.join(".env")).ok();
|
||||
|
||||
env_logger::init();
|
||||
|
||||
let system_id = ids::get_or_create_id(&ids::eval_system_id_path()).ok();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue