Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
Fidle
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package Registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Guillaume Gautier
Fidle
Commits
d2eae343
Commit
d2eae343
authored
4 years ago
by
Jean-Luc Parouty
Browse files
Options
Downloads
Patches
Plain Diff
Correct one more little $@&! bug in override bizness...
parent
5264f262
No related branches found
No related tags found
No related merge requests found
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
VAE/01-VAE-with-MNIST.ipynb
+100
-82
100 additions, 82 deletions
VAE/01-VAE-with-MNIST.ipynb
fidle/pwk.py
+20
-10
20 additions, 10 deletions
fidle/pwk.py
with
120 additions
and
92 deletions
VAE/01-VAE-with-MNIST.ipynb
+
100
−
82
View file @
d2eae343
This diff is collapsed.
Click to expand it.
fidle/pwk.py
+
20
−
10
View file @
d2eae343
...
@@ -54,9 +54,10 @@ _chrono_stop = None
...
@@ -54,9 +54,10 @@ _chrono_stop = None
# init_all
# init_all
# -------------------------------------------------------------
# -------------------------------------------------------------
#
#
def
init
(
name
=
None
,
run_dir
=
'
./run
'
):
def
init
(
name
=
None
,
run_dir
ectory
=
'
./run
'
):
global
notebook_id
global
notebook_id
global
datasets_dir
global
datasets_dir
global
run_dir
global
_start_time
global
_start_time
# ---- Parameters from config.py
# ---- Parameters from config.py
...
@@ -80,7 +81,14 @@ def init(name=None, run_dir='./run'):
...
@@ -80,7 +81,14 @@ def init(name=None, run_dir='./run'):
# ---- run_dir
# ---- run_dir
#
#
run_dir
=
override
(
'
run_dir
'
)[
'
run_dir
'
]
attrs
=
override
(
'
run_dir
'
,
return_attributes
=
True
)
run_dir
=
attrs
.
get
(
'
run_dir
'
,
run_directory
)
# Solution 2, for fun ;-)
# run_dir = run_directory
# override('run_dir', module_name='__main__')
# override('run_dir', module_name=__name__, verbose=False)
mkdir
(
run_dir
)
mkdir
(
run_dir
)
# ---- Update Keras cache
# ---- Update Keras cache
...
@@ -154,7 +162,7 @@ def error_datasets_not_found():
...
@@ -154,7 +162,7 @@ def error_datasets_not_found():
def
override
(
*
names
):
def
override
(
*
names
,
module_name
=
'
__main__
'
,
verbose
=
True
,
return_attributes
=
False
):
'''
'''
Try to override attributes given par name with environment variables.
Try to override attributes given par name with environment variables.
Environment variables name must be : FIDLE_OVERRIDE_<NOTEBOOK-ID>_<NAME>
Environment variables name must be : FIDLE_OVERRIDE_<NOTEBOOK-ID>_<NAME>
...
@@ -169,15 +177,15 @@ def override(*names):
...
@@ -169,15 +177,15 @@ def override(*names):
'''
'''
# ---- Where to override
# ---- Where to override
#
#
m
ain
=
sys
.
modules
[
'
__main__
'
]
m
odule
=
sys
.
modules
[
module_name
]
# ---- No names : mean all
# ---- No names : mean all
#
#
if
len
(
names
)
==
0
:
if
len
(
names
)
==
0
:
names
=
[]
names
=
[]
for
name
in
dir
(
m
ain
):
for
name
in
dir
(
m
odule
):
if
name
.
startswith
(
'
_
'
):
continue
if
name
.
startswith
(
'
_
'
):
continue
v
=
getattr
(
m
ain
,
name
)
v
=
getattr
(
m
odule
,
name
)
if
type
(
v
)
not
in
[
str
,
int
,
float
,
bool
,
tuple
,
list
,
dict
]:
continue
if
type
(
v
)
not
in
[
str
,
int
,
float
,
bool
,
tuple
,
list
,
dict
]:
continue
names
.
append
(
name
)
names
.
append
(
name
)
...
@@ -197,7 +205,7 @@ def override(*names):
...
@@ -197,7 +205,7 @@ def override(*names):
# ---- Environment variable : Exist
# ---- Environment variable : Exist
#
#
value_old
=
getattr
(
m
ain
,
name
)
value_old
=
getattr
(
m
odule
,
name
)
value_type
=
type
(
value_old
)
value_type
=
type
(
value_old
)
if
value_type
in
[
str
]
:
if
value_type
in
[
str
]
:
...
@@ -208,14 +216,16 @@ def override(*names):
...
@@ -208,14 +216,16 @@ def override(*names):
# ---- Override value
# ---- Override value
#
#
setattr
(
m
ain
,
name
,
new_value
)
setattr
(
m
odule
,
name
,
new_value
)
overrides
[
name
]
=
new_value
overrides
[
name
]
=
new_value
if
len
(
overrides
)
>
0
:
if
verbose
and
len
(
overrides
)
>
0
:
display_md
(
'
**\*\* Overrided parameters : \*\***
'
)
display_md
(
'
**\*\* Overrided parameters : \*\***
'
)
for
name
,
value
in
overrides
.
items
():
for
name
,
value
in
overrides
.
items
():
print
(
f
'
{
name
:
20
s
}
:
{
value
}
'
)
print
(
f
'
{
name
:
20
s
}
:
{
value
}
'
)
return
overrides
if
return_attributes
:
return
overrides
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment